国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目次
konva.jsのコマンドモードに基づいて、redo redo機(jī)能の実裝
ホームページ ウェブフロントエンド jsチュートリアル konva.jsにコマンドクラスのコマンドクラスを?qū)g裝して、機(jī)能を元に戻し、redo機(jī)能をサポートする方法は?

konva.jsにコマンドクラスのコマンドクラスを?qū)g裝して、機(jī)能を元に戻し、redo機(jī)能をサポートする方法は?

Apr 04, 2025 pm 04:30 PM
ai red

konva.jsにコマンドクラスのコマンドクラスを?qū)g裝して、機(jī)能を元に戻し、redo機(jī)能をサポートする方法は?

konva.jsのコマンドモードに基づいて、redo redo機(jī)能の実裝

この記事では、コマンドモードを使用して、konva.js描畫(huà)アプリケーションに元に戻す(ctrl z)およびredo(ctrl y)関數(shù)を?qū)g裝する方法を紹介します。グラフィカル操作をコマンドオブジェクトにカプセル化し、コマンドスタックを使用してこれらの操作を管理して、グラフィカル編集のフォールバックと進(jìn)捗を?qū)g現(xiàn)します。

まず、基本的なCommandクラスを定義します。

クラスコマンド{
  constructor(){
    this.states = []; //ステートスナップショットを保存するために使用}

  実行する() {
    新しいエラーをスローします( '実行メソッドを?qū)g裝する必要があります');
  }

  undo(){
    新しいエラーをスローします(「元に戻すメソッドを?qū)g裝する必要があります」);
  }

  Savestate(STATE){
    this.states.push(state);
  }

  restorestate(){
    this.states.pop()||を返しますヌル; //前の狀態(tài)に戻るか、null
  }
}

次に、長(zhǎng)方形を描畫(huà)するコマンドなど、特定のコマンドクラスを作成します。

クラスDrawRectangLeCommand拡張コマンド{
  コンストラクター(ステージ、レイヤー、rect){
    素晴らしい();
    this.stage = stage;
    this.layer = layer;
    this.rect = rect;
  }

  実行する() {
    this.savestate(this.layer.tojson()); //現(xiàn)在のレイヤーの狀態(tài)を保存しますthis.layer.add(this.rect);
    this.layer.draw();
  }

  undo(){
    this.rect.destroy();
    const prevstate = this.restorestate();
    if(prevstate){
      this.layer.destroychildren(); //レイヤーをクリアするthis.layer = konva.node.create(prevstate、this.stage); //前の狀態(tài)this.stage.add(this.layer)を復(fù)元します。
      this.layer.draw();
    }
  }
}

次に、コマンドマネージャーを?qū)g裝します。

 class commandmanager {
  constructor(){
    this.undostack = [];
    this.redostack = [];
  }

  executeCommand(command){
    command.execute();
    this.undostack.push(command);
    this.redostack = []; //新しいコマンドを?qū)g行した後、redoスタックをクリアします}

  undo(){
    if(this.undostack.length === 0)return;
    const command = this.undostack.pop();
    command.undo();
    this.redostack.push(command);
  }

  redo(){
    if(this.redostack.length === 0)return;
    const command = this.redostack.pop();
    command.execute();
    this.undostack.push(command);
  }
}

最後に、konva.jsアプリケーションで使用します。

 const stage = new konva.stage({
  コンテナ:「コンテナ」、
  幅:window.innerwidth、
  高さ:window.innerheight
});

const layer = new konva.layer();
stage.add(層);

const commandmanager = new CommandManager();

stage.on( 'click'、(e)=> {
  const rect = new konva.rect({
    X:e.evt.layerx、
    Y:e.evt.layery、
    幅:50、
    高さ:50、
    塗りつぶし:「赤」、
    Draggable:True
  });

  const command = new DrawRectangleCommand(ステージ、レイヤー、rect);
  commandmanager.executecommand(command);
});

document.addeventlistener( 'keydown'、(e)=> {
  if(e.ctrlkey && e.key === 'z'){
    commandmanager.undo();
  } else if(e.ctrlkey && e.key === 'y'){
    commandmanager.redo();
  }
});

このコードは、単純な長(zhǎng)方形の図面を?qū)g裝し、やり直しを元に戻します。 Commandクラスを拡張して、動(dòng)き、スケーリング、回転などの他のグラフィカル操作をサポートできます。各操作のexecute方法で現(xiàn)在の狀態(tài)を保存し、元の狀態(tài)をundo戻す方法で復(fù)元することを忘れないでください。これにより、元に戻す機(jī)能が正しく機(jī)能するようになります。

以上がkonva.jsにコマンドクラスのコマンドクラスを?qū)g裝して、機(jī)能を元に戻し、redo機(jī)能をサポートする方法は?の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國(guó)語(yǔ) Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見(jiàn)つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫(huà)像を無(wú)料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫(xiě)真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫(xiě)真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無(wú)料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡(jiǎn)単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無(wú)料のコードエディター

SublimeText3 中國(guó)語(yǔ)版

SublimeText3 中國(guó)語(yǔ)版

中國(guó)語(yǔ)版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開(kāi)発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開(kāi)発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

通貨サークルの人気が戻ってきましたが、なぜ賢い人たちが靜かに自分のポジションを増やし始めたのですか?オンチェーンデータの傾向を見(jiàn)て、次のラウンドのウェルスパスワードを把握してください! 通貨サークルの人気が戻ってきましたが、なぜ賢い人たちが靜かに自分のポジションを増やし始めたのですか?オンチェーンデータの傾向を見(jiàn)て、次のラウンドのウェルスパスワードを把握してください! Jul 09, 2025 pm 08:30 PM

市場(chǎng)の狀況が回復(fù)するにつれて、ますます多くの賢明な投資家が通貨サークルでのポジションを靜かに増加させ始めました。多くの人が、ほとんどの人が待って見(jiàn)たとき、何が彼らを決定的に取るのか疑問(wèn)に思っていますか?この記事では、オンチェーンデータを介した現(xiàn)在の傾向を分析して、読者がスマートファンドの論理を理解し、次のラウンドの潛在的な富の成長(zhǎng)機(jī)會(huì)をよりよく把握できるようにします。

暗號(hào)通貨の主流の公共チェーンは何ですか? 2025年の暗號(hào)通貨主流の公共チェーンのトップ10ランキング 暗號(hào)通貨の主流の公共チェーンは何ですか? 2025年の暗號(hào)通貨主流の公共チェーンのトップ10ランキング Jul 10, 2025 pm 08:21 PM

パブリックチェーンフィールドのパターンは、「1つのスーパー、多くの強(qiáng)いもの、100の花が咲く」という傾向を示しています。イーサリアムは依然として生態(tài)學(xué)的な堀でリードしていますが、ソラナ、雪崩、その他は挑戦的なパフォーマンスです。一方、重要なインフラストラクチャである相互運(yùn)用性に焦點(diǎn)を當(dāng)てたPolkadot、Cosmosは、共存する複數(shù)のチェーンの將來(lái)の寫(xiě)真を形成します。ユーザーと開(kāi)発者の場(chǎng)合、どのプラットフォームが単一の選択肢ではないが、特定のニーズに基づいてパフォーマンス、コスト、セキュリティ、生態(tài)學(xué)的成熟度のトレードオフが必要です。

ビットコインは新しい高値を破り、ドゲコインが強(qiáng)くリバウンドし、イーサリアムはペースに追いつくでしょう ビットコインは新しい高値を破り、ドゲコインが強(qiáng)くリバウンドし、イーサリアムはペースに追いつくでしょう Jul 09, 2025 pm 08:24 PM

最近、ビットコインは新しい高値に達(dá)し、ドッグコインは強(qiáng)いリバウンドを案內(nèi)し、市場(chǎng)は暑かった。次に、市場(chǎng)ドライバーと技術(shù)的側(cè)面を分析して、イーサリアムがまだ上昇に従う機(jī)會(huì)がまだあるかどうかを判斷します。

Stablecoinとは何ですか? Douyinのホット検索が議論されているのはなぜですか? Stablecoinとは何ですか? Douyinのホット検索が議論されているのはなぜですか? Jul 09, 2025 am 06:03 AM

Stablecoinsは、米ドルなどの資産に固定されており、安定した価値を維持することを目指している暗號(hào)通貨です。それらは主に3つのタイプに分かれています:フィアット通貨擔(dān)保、暗號(hào)通貨の擔(dān)保、アルゴリズム。 1. USDTやUSCDなどのFIAT通貨擔(dān)保タイプは、米ドルの準(zhǔn)備金によってサポートされています。 2。DAIなどの暗號(hào)通貨の擔(dān)保タイプは、他の通貨を過(guò)剰に擔(dān)保する必要があります。 3.アルゴリズムは、供給を調(diào)整するためにスマートコントラクトに依存していますが、高いリスクがあります。 Douyinなどのプラットフォームで熱く議論されている理由には、次のようなプラットフォームが含まれます。ヘッジツールとして、暗號(hào)市場(chǎng)が落ちるとき、初心者が暗號(hào)世界に參入するための橋、Defiでの高利回りの財(cái)務(wù)管理を取得する方法、および低コストの國(guó)境を越えた支払いの適用。 Stablecoinsを入手するには、Binance、Ouyi、Huobiなどの主流の交換を通じて取引できます。

カルダノのスマートコントラクトの進(jìn)化:2025年のアロンゾのアップグレードの影響 カルダノのスマートコントラクトの進(jìn)化:2025年のアロンゾのアップグレードの影響 Jul 10, 2025 pm 07:36 PM

CardanoのAlonzo Hard Forkアップグレードは、Plutus Smart Contractプラットフォームを?qū)毪工毪长趣摔瑜辍ardanoをバリュー転送ネットワークから完全に機(jī)能的なスマートコントラクトプラットフォームに変換しました。 1。Plutusは、強(qiáng)力な機(jī)能、セキュリティの強(qiáng)化、予測(cè)可能なコストモデルを備えたHaskell言語(yǔ)に基づいています。 2。アップグレード後、DAPPSの展開(kāi)が加速され、開(kāi)発者コミュニティが拡大され、DefiおよびNFTエコシステムが急速に発展しています。 3。2025を見(jiàn)て、カルダノの生態(tài)系はより成熟して多様になります。 Basho時(shí)代のスケーラビリティの改善、クロスチェーンの相互運(yùn)用性の向上、Voltaire時(shí)代の分散統(tǒng)治の進(jìn)化、および企業(yè)レベルのアプリケーションによる主流の採(cǎi)用の促進(jìn)との組み合わせて、CardanoはCardanoが持っています

2025年に投資する価値があるトップ5(最新のデータを使用) 2025年に投資する価値があるトップ5(最新のデータを使用) Jul 09, 2025 am 06:06 AM

2025年に最も価値のある5つのスタブコインは、テザー(USDT)、USDコイン(USDC)、DAI(DAI)、First Digital USD(FDUSD)、TrueUSD(TUSD)です。

誰(shuí)がStablecoinsを発行しますか? stablecoinsとは何ですか? 誰(shuí)がStablecoinsを発行しますか? stablecoinsとは何ですか? Jul 09, 2025 pm 06:24 PM

Stablecoinsは、米ドルなどのFiat通貨を固定することにより、価格の安定性を維持する暗號(hào)資産です。それらは主に3つのカテゴリに分かれています:フィアット通貨擔(dān)保、暗號(hào)資産の擔(dān)保、アルゴリズムの安定性。 1。USDTはテザーによって発行され、最大の市場(chǎng)価値と最高の流動(dòng)性を備えたスタブコインです。 2。USDCは、CircleとCoinbaseによって発売されたCenter Allianceによってリリースされ、その透明性とコンプライアンスで知られています。 3. DAIは、暗號(hào)資産の過(guò)剰な協(xié)力化を通じてMakerdaoによって生成され、Defiフィールドのコア通貨です。 4。BusdはPaxosと協(xié)力して開(kāi)始され、米國(guó)によって規(guī)制されていますが、中止されています。 5。TUSDは、サードパーティのエスクローアカウントを通じて高い透明性予備の検証を?qū)g現(xiàn)します。ユーザーは、Binance、Ouyi、Huobiなどの集中交換を使用できます

2025 Crypto Market(最新のアップデート)でトップ20のトークンランキングをリードする 2025 Crypto Market(最新のアップデート)でトップ20のトークンランキングをリードする Jul 10, 2025 pm 08:48 PM

2025年のトップ20の最も有望な暗號(hào)資産には、主にパブリックチェーン、レイヤー2、AI、DEFI、ゲームなどの複數(shù)のトラックをカバーするBTC、ETH、SOLなどが含まれます。 1.BTCは、デジタルイエローメタルプロパティとETFの普及により市場(chǎng)をリードし続けています。 2.スマートコントラクトプラットフォームのステータスとアップグレードにより、エコシステムを統(tǒng)合します。 3.ソルは、高性能の公共チェーンと開(kāi)発者コミュニティで際立っています。 4.Linkは、実際のデータを接続するOracleのリーダーです。 5.RNDRは、分散型GPUネットワークサービスAIニーズを構(gòu)築します。 6.Imxは、ゼロガスのない環(huán)境を提供するためにWeb3ゲームに焦點(diǎn)を當(dāng)てています。 7. ARBは、成熟したレイヤー2テクノロジーと巨大なdefiエコシステムでリードします。 8.マティックは、マルチチェーンの進(jìn)化を通じてイーサリアムの価値層になりました

See all articles