Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R10
SVG_Use
|
SVG_Use ( parentSVGObjec ; id {; x ; y ; width ; height {; mode}} ) -> 戻り値 | ||||||||
引数 | 型 | 説明 | ||||||
parentSVGObjec | SVG_Ref |
![]() |
親要素の参照 | |||||
id | 文字 |
![]() |
シンボル名 | |||||
x | 倍長整数 |
![]() |
ビューボックスのX位置 | |||||
y | 倍長整数 |
![]() |
ビューボックスのY位置 | |||||
width | 倍長整数 |
![]() |
ビューボックスの幅 | |||||
height | 倍長整数 |
![]() |
ビューボックスの高さ | |||||
mode | 文字 |
![]() |
ビューボックスへの調整 | |||||
戻り値 | SVG_Ref |
![]() |
SVGオブジェクト参照 | |||||
O comando SVG_Use põe uma ocorrência do símbolo no recipiente SVG designado por objetoSVGPai e devolve sua referencia. Se objetoSVGPai não é um documento SVG ou se id não é o nome de um objeto do documento SVG, é gerado um erro.
Um símbolo se utiliza para definir os objetos gráficos, nunca renderiza diretamente, mas pode criar ser instanciado mediante o comando SVG_Use.
O parâmetro id específica o nome do símbolo.
Os parâmetros opcionais x, y, largo e alto especificam o retângulo da área de visualização (atributo 'Viewbox').
O parâmetro opcional modo permite indicar se a gráfica deve ser adaptada e como, ao tamanho do retângulo de visualização. (Ver o comando SVG_New).
Definimos uma gráfica composta de dois círculos vermelhos e dois quadrados azuis. Depois utilizamos esta gráfica em um laço para criar 36 ocorrências com diferentes posições, opacidade e rotação.
$SVG:=SVG_New
`Desenho do fundo
SVG_New_rect($SVG;20;20;650;650;0;0;"gray";"lemonchiffon")
`Definição de um símbolo composto por 2 quadrados e 2 círculos
$Symbol:=SVG_Define_symbol($SVG;"MySymbol";0;0;110;110;"true")
SVG_New_circle($Symbol;30;30;25;"red";"palevioletred")
SVG_New_rect($Symbol;10;60;40;40;0;0;"blue";"cornflowerblue")
SVG_New_rect($Symbol;60;10;40;40;0;0;"blue";"cornflowerblue")
SVG_New_circle($Symbol;80;80;25;"red";"palevioletred")
`Em um grupo…
$g:=SVG_New_group($SVG)
`…posicionado a 20 unidades da esquina superior esquerda do documento…
SVG_SET_TRANSFORM_TRANSLATE($g;20;20)
`…colocar 36 patrões variando a posição, opacidade e rotação
For($x;0;540;90)   `6 colunas
For($y;0;540;90)    `6 linhas
$use:=SVG_Use($g;"MySymbol";$x;$y;110;110)
SVG_SET_OPACITY($use;100-($y/12)+($x/12)
SVG_SET_TRANSFORM_ROTATE($use;($x*(18/50))+($y*(18/50));($x+55);($y+55))
End for
End for