Difference between revisions of "Path2D:setPath"

From GiderosMobile
(removed language stuff)
m (Text replacement - "</source>" to "</syntaxhighlight>")
 
(One intermediate revision by the same user not shown)
Line 15: Line 15:
 
*'''*''' - repeats last command until all coordinates are exhausted
 
*'''*''' - repeats last command until all coordinates are exhausted
 
and provided coordinates as table or simply arguments.
 
and provided coordinates as table or simply arguments.
<source lang="lua">
+
<syntaxhighlight lang="lua">
 
Path2D:setPath(commands,coordinates,moreCoordinates)
 
Path2D:setPath(commands,coordinates,moreCoordinates)
</source>
+
</syntaxhighlight>
  
 
=== Parameters ===
 
=== Parameters ===
Line 26: Line 26:
 
=== Example ===
 
=== Example ===
 
'''Drawing Moon'''<br/>
 
'''Drawing Moon'''<br/>
<source lang="lua">
+
<syntaxhighlight lang="lua">
 
--Moon
 
--Moon
 
local p=Path2D.new()
 
local p=Path2D.new()
Line 37: Line 37:
 
p:setAnchorPosition(100,100)
 
p:setAnchorPosition(100,100)
 
stage:addChild(p)
 
stage:addChild(p)
</source>
+
</syntaxhighlight>
  
 
{{Path2D}}
 
{{Path2D}}

Latest revision as of 15:32, 13 July 2023

Available since: Gideros 2016.04
Class: Path2D

Description

Sets path to draw, using string with commands represented as:

  • M - MoveTo, 2 values (x,y)
  • L - LineTo, 2 values (x,y)
  • Q - QuadTo, 4 values (c0x,c0y,x,y)
  • C - CubicTo, 6 values (c0x,c0y,c1x,c1y,x,y)
  • H - Horzontal Line, 1 value (x)
  • V - Vertical Line, 1 value (y)
  • A - ArcTo, 7 values (r1,r2,angle,largeArc,sweep,x,y)
  • Z - Close, no parameter
  • * - repeats last command until all coordinates are exhausted

and provided coordinates as table or simply arguments.

Path2D:setPath(commands,coordinates,moreCoordinates)

Parameters

commands: (string) list of commands as ML**Z expecting according coordinates
coordinates: (table or number) lua table with coordinates for each command, in the same order as commands
moreCoordinates: (number) if second argument is not table, you can provide more coordinates as separate arguments optional

Example

Drawing Moon

--Moon
local p=Path2D.new()
local ms="MQQZ" --MoveTo, QuadTo, QuadTo, Close
local mp={100,0, -50,100, 100,200, 20,100, 100,0 }
p:setPath(ms,mp) --Set the path from a set of commands and coordinates
p:setLineThickness(3) -- Outline width
p:setFillColor(0xE0E0E0,0.7) --Fill color
p:setLineColor(0xC0C0C0) --Line color
p:setAnchorPosition(100,100)
stage:addChild(p)