4D v16

SVG_SET_MARKER

Inicio

 
4D v16
SVG_SET_MARKER

SVG_SET_MARKER 


 

SVG_SET_MARKER ( objetoSVG ; id {; posicion} ) 
Parámetro Tipo   Descripción
objetoSVG  Ref_SVG in Referencia de un elemento SVG
id  Cadena in Nombre del marcador
posicion  Cadena in Posición del marcador

El comando SVG_SET_MARKER permite asociar un marcador al objeto de referencia objetoSVG. Si objetoSVG no es la referencia de un elemento 'line', 'path', 'polyline' o 'polygon', se genera un error. Si el atributo ya existe, su valor se reemplaza.

El parámetro id es el nombre del elemento marcador a utilizar según lo especificado por el comando SVG_Define_marker. Si este nombre no existe, se genera un error.

Para eliminar un marcador existente, pase la cadena "none" o una cadena vacía en el parámetro id

El parámetro opcional posicion permite fijar la posición del marcador con respecto al objeto. Es posible poner diferentes marcadores (si se desea) al principio, final o en cualquier otro pico de un trazo. Los valores pueden ser los siguientes:

  • start para poner un marcador al comienzo del trazo
  • end para poner un marcador al final del trazo
  • middle para poner un marcador en cada pico que no sea al principio y al final.
  • all para poner marcadores en todos los picos del trazo.
    Si se omite este parámetro, el marcador se pone al final del trazo.

Dibujar una flecha:

 $SVG:=SVG_New
  `Definir la flecha
 $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)
  `Poner una flecha al final del trazo
 SVG_SET_MARKER($line;" arrow ")

Dibujar un diagrama con marcadores diferentes al inicio y al final:

 $SVG:=SVG_New
 SVG_SET_DEFAULT_BRUSHES("red";"red")
 
  `Definir un círculo para marcar los puntos
 $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)
 
  `Definir un cuadrado para el punto de inicio
 $start:=SVG_Define_marker($SVG;"startMarker";1;1;2;2)
 SVG_New_rect($start;0;0;2;2)
 
  `Definir un triángulo para el punto final
 $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)
  `Eje de las X
 For($Lon_i;0;200;20)
    APPEND TO ARRAY($tX;$Lon_i+10)
 End for
  `Datos
 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)
  `Ordenar los marcadores:
 SVG_SET_MARKER($line;"startMarker";"start")
 SVG_SET_MARKER($line;"pointMarker";"middle")
 SVG_SET_MARKER($line;"endMarker";"end")



Ver también 

SVG_Define_marker

 
PROPIEDADES 

Producto: 4D
Tema: Atributos
Número 65931

 
HISTORIA 

Creado por: Composant 4D SVG v11.3
Modificado: 4D v13

 
ARTICLE USAGE

4D SVG ( 4D v16)