| 4D v20SVG_SET_MARKER | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v20
 SVG_SET_MARKER 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| SVG_SET_MARKER ( svgObject ; id {; position} ) | ||||||||
| 引数 | 型 | 説明 | ||||||
| svgObject | SVG_Ref |   | SVG 要素の参照 | |||||
| id | 文字 |   | マーカー名 | |||||
| position | 文字 |   | マーカーの位置 | |||||
SVG_SET_MARKER コマンドを使用すると、svgObject 引数で参照しているオブジェクトにマーカーを関連付けたり、既存のマーカーを削除したりすることができます。svgObject 参照が 'line'、'path'、'polyline' もしくは 'polygon' 要素への参照ではない場合、エラーが生成されます。ある属性が既に存在する場合、その値は上書きされます。
id 引数には SVG_Define_marker コマンドで指定したマーカー要素名を渡します。存在しない名前を渡した場合、エラーが生成されます。
既存のマーカーを削除するためには、 id p引数に"none" または空の文字列を渡します。
任意のposition 引数を使用すると、オブジェクトにに対してのマーカーの位置を設定することができます。必要であれば、異なるマーカーをパスの始点、終点、またはどんなピークにも設定することができます。その際に使用できる値は以下の通りです:
矢印を描画する場合を考えます:
 $SVG:=SVG_New
  `矢印を設定します
 $arrow:=SVG_Define_marker($SVG;"arrow";0;5;4;3;-1)
 SVG_SET_VIEWBOX($arrow;0;0;10;10)
 $path:=SVG_New_path($arrow;0;0)
 SVG_SET_FILL_BRUSH($path;"black")
 SVG_PATH_LINE_TO($path;10;5)
 SVG_PATH_LINE_TO($path;0;10)
 SVG_PATH_CLOSE($path)
 
 $line:=SVG_New_path($SVG;100;75)
 SVG_SET_STROKE_WIDTH($line;10)
 SVG_PATH_LINE_TO($line;200;75)
 SVG_PATH_LINE_TO($line;250;125)
  `パスの終わりに矢じりを置く
 SVG_SET_MARKER($line;" arrow ")始まりと終わりに異なるマーカーがあるダイヤグラムを描画する場合を考えます: 
 
 $SVG:=SVG_New
 SVG_SET_DEFAULT_BRUSHES("red";"red")
 
  `点をマークするための円を設定
 $point:=SVG_Define_marker($SVG;"pointMarker";2;2;3;3)
 SVG_SET_VIEWBOX($point;0;0;4;4)
 SVG_New_circle($point;2;2;1)
 
  `開始地点の四角を設定
 $start:=SVG_Define_marker($SVG;"startMarker";1;1;2;2)
 SVG_New_rect($start;0;0;2;2)
 
  `終了地点の三角形を設定
 $end:=SVG_Define_marker($SVG;"endMarker";5;5;3;3;60)
 SVG_SET_VIEWBOX($end;0;0;10;10)
 SVG_New_regular_polygon($end;10;3)
 
 ARRAY LONGINT($tX;0)
 ARRAY LONGINT($tY;0)
  `X軸
 For($Lon_i;0;200;20)
    APPEND TO ARRAY($tX;$Lon_i+10)
 End for
  `データ
 APPEND TO ARRAY($tY;100)
 APPEND TO ARRAY($tY;100)
 APPEND TO ARRAY($tY;30)
 APPEND TO ARRAY($tY;30)
 APPEND TO ARRAY($tY;80)
 APPEND TO ARRAY($tY;60)
 APPEND TO ARRAY($tY;10)
 APPEND TO ARRAY($tY;40)
 APPEND TO ARRAY($tY;50)
 APPEND TO ARRAY($tY;70)
 $line:=SVG_New_polyline_by_arrays($SVG;->$tX;->$tY;"red";"none";5)
  `マーカーを設置:
 SVG_SET_MARKER($line;"startMarker";"start")
 SVG_SET_MARKER($line;"pointMarker";"middle")
 SVG_SET_MARKER($line;"endMarker";"end")
	プロダクト: 4D
	テーマ: 属性
	番号: 
        65931
        
        
        
	
	初出: Composant 4D SVG v11.3
	変更: 4D v13
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	SVGコンポーネント ( 4D v20)
	
	
 コメントを追加
コメントを追加