Polyline Polylineのリダクション(Visvalingam-Whyattアルゴリズム) 面積を比較しながら削減していくのでスケールに依存しないという点で便利。処理の流れ両隣のポイントと成す三角形の面積を比較して、小さいものから順に削除していく。削除したら前後のポイントの三角形の面積を再計算する。三角形を視覚化したもの。コード初... 2023.08.27 Polyline
Polyline 連続性のあるベジェ曲線の描画 連続したベジェ曲線ベジェ曲線は始点と終点を必ず通り、他の制御点は通らない特徴がある。ガイドラインを分割して中間点を始点と終点にすれば、各々のカーブが同じベクトルでつながるので連続したカーブを描くことができる。2次(Quandric)のベジェ... 2023.05.07 Polyline
Polyline ポリラインをベジェ制御点に分割する ガイド用に作成したポリラインをベジェ曲線用に分割していく。ループにも対応しています。2次ベジェ曲線(3点の制御点)最初と最後以外の直線を分割して、3点ずつカーブをつくり、つないでいく。//// ポリラインをベジェ曲線(2次)の制御点ラインへ... 2023.05.06 Polyline
Polyline Polylineのリダクション(Douglas-Peuckerアルゴリズム) カーブを単純化するアルゴリズムです。処理の流れ1:始点と終点をプロット対象とする。2:プロット対象をラインで結び、その間の各点との距離を調べる3:許容距離以上で一番遠いポイントを選び、新たにプロット対象とする4:2~3の処理を再帰的に繰り返... 2022.12.28 Polyline
SOP Polypath SOPのコード解説 Polypath SOPとはポリラインのトポロジーをクリーンアップし、重複したり分離しているカーブを一本に整理する便利なSOPです。Polypath SOPの中身。trace_edgesが肝の部分で、ここで新しくポリラインを生成している。直... 2022.12.26 SOP
Polyline ハーフベクトルを計算する ハーフベクトルを計算することで、進行方向に対してカーブが左右のどちら向きに膨らんでいるか(外向きか内向きか)を判定できる。前後のポイント座標で計算する//// ハーフベクトルを計算する(外側のベクトル)// Run Over: Primit... 2022.11.03 Polyline
Polyline 点と多角形の内外判定(Winding-Numberアルゴリズム) 概要点が多角形に含まれているか否かはWinding Numberアルゴリズムを使って判定できる。多角形の各頂点を周回して得られる角度の合計が、もし内側にある場合は360度になり、外側の場合は0度になる。コード調べるポイントごとの処理。inp... 2022.01.29 Polyline
Polyline プリミティブのアトリビュートとグループを転写する プリミティブのアトリビュートを転写する//// アトリビュートのコピー//// RunOver:Primitive//int targetPrim = 0; // コピー先のインデックスint sourceInput = 1; // 参照す... 2021.04.05 Polyline
Math 円と線分の交点 計算直線の式はP1 = P0 + V*tそれぞれの成分に分割するとX = P.x + V.x * tY = P.y + V.y * t円の式はX^2 + Y^2 = R^2それぞれの成分を円の式に代入してtで整理する(P.x + V.x *... 2020.11.06 Math
Math 直線同士の距離を求める 2本の直線を最短で結ぶ直線の交点を求めて距離を計算する。計算直線ABとCDを最短で結ぶ直線(ベクトル)はどちらの直線とも90度で交差する関係で存在している。つまり、どちらの直線とも内積が0で交わる、と考えて方程式を立てて解いていく。正規化し... 2020.10.26 Math