0

VCS システムで使用するためのスタックファイルの JSON へのエクスポートに取り組んでおり、グラデーションのエクスポート/インポートから奇妙な結果が得られました。辞書には、プロパティについて次のように記載されています。

fillGradient["from"] - グラデーションの開始点を指定する座標

fillGradient["to"] - グラデーションの終点を指定する座標

fillGradient["via"] - グラデーションの中間点を指定する座標 (グラデーションのスケーリングとシアリングに影響します)

ご覧のとおり、座標系は指定されていません。いくつかのテストから、座標はカードを基準にしているように見えますが、移動するたびに値が変化するため、これは意味がありません。これらのプロパティおよび/またはプロパティがmarkerPoints規則に従わない理由に関する詳細なドキュメントはありますか?それは明らかにそうすることができるオブジェクトポイントに関連しています.

4

3 に答える 3

3

ポイントの場所は、見つけたカードに相対的です。参照用にこのスタックを見たいかもしれません: http://www.tactilemedia.com/site_files/downloads/gradient_explorer.rev

于 2013-03-09T08:40:30.813 に答える
2

少し前に、奇妙な座標系にイライラしたとき、グラフィックに次の動作を追加しました。

setProp relFillGradient[pKind] pPoint
   put round(item 1 of pPoint*the width of me + item 1 of the topLeft of me) into tX
   put round(item 2 of pPoint*the height of me + item 2 of the topLeft of me) into tY
   set the fillGradient[pKind] of me to tX,tY
end relFillGradient

getProp relFillGradient[pKind]
   put the fillGradient[pKind] of me into tPoint
   put (item 1 of tPoint - item 1 of the topleft of me)/the width of me into tRelX
   put (item 2 of tPoint - item 2 of the topleft of me)/the height of me into tRelY
   return (tRelX,tRelY)
end relFillGradient

次に、fillGradient を設定するには、次のようにします。

set the relFillGradient["from"] of graphic "myGraphic" to 0.1,0.3

相対ポイントは、左上が 0,0、右下が 1,1 です。

: 値を丸めた値に設定する必要があるため、getProp からまったく同じ値が返されない場合があります。

パーセンテージ値が必要ない場合 (私が行ったように)、乗算を削除できるため、さらに簡単になり、値を丸める必要がないという利点があります。

于 2013-03-19T13:31:12.383 に答える
2

実際には、これらのグラデーション プロパティはカードの左上を基準にしています。これは、Adobe Ilustrator バージョン 7 から LiveCode にグラデーションをインポートする方法です。

このスタックのコードを確認できます。

http://andregarzia.on-rev.com/alejandro/stacks/Eps_Import_V05C.zip

于 2013-03-09T07:54:52.903 に答える