Difference between revisions of "Path2D"

From GiderosMobile
(removed language stuff)
m (Text replacement - "</source>" to "</syntaxhighlight>")
 
(One intermediate revision by the same user not shown)
Line 10: Line 10:
 
=== Examples ===
 
=== Examples ===
 
'''Drawing a Moon'''
 
'''Drawing a Moon'''
<source lang="lua">
+
<syntaxhighlight lang="lua">
 
--Moon
 
--Moon
 
local p=Path2D.new()
 
local p=Path2D.new()
Line 22: Line 22:
 
p:setPosition(160,240)
 
p:setPosition(160,240)
 
stage:addChild(p)
 
stage:addChild(p)
</source>
+
</syntaxhighlight>
  
 
'''Drawing a banana'''
 
'''Drawing a banana'''
<source lang="lua">
+
<syntaxhighlight lang="lua">
 
--Banana shape, SVG path format
 
--Banana shape, SVG path format
 
local banana="M8.64,223.948c0,0,143.468,3.431,185.777-181.808c2.673-11.702-1.23-20.154,1.316-33.146h16.287c0,0-3.14,17.248,1.095,30.848c21.392,68.692-4.179,242.343-204.227,196.59L8.64,223.948z"
 
local banana="M8.64,223.948c0,0,143.468,3.431,185.777-181.808c2.673-11.702-1.23-20.154,1.316-33.146h16.287c0,0-3.14,17.248,1.095,30.848c21.392,68.692-4.179,242.343-204.227,196.59L8.64,223.948z"
Line 36: Line 36:
 
p:setPosition(160,240)
 
p:setPosition(160,240)
 
stage:addChild(p)
 
stage:addChild(p)
</source>
+
</syntaxhighlight>
  
 
{|-
 
{|-

Latest revision as of 14:32, 13 July 2023

Supported platforms: Platform android.pngPlatform ios.pngPlatform mac.pngPlatform pc.pngPlatform html5.pngPlatform winrt.pngPlatform win32.png
Available since: Gideros 2016.04
Inherits from: Sprite

Description

Draws quick 2D vector paths. This class aims at being a faster alternative to Shape for complex/curvy shapes.

Examples

Drawing a 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)
p:setPosition(160,240)
stage:addChild(p)

Drawing a banana

--Banana shape, SVG path format
local banana="M8.64,223.948c0,0,143.468,3.431,185.777-181.808c2.673-11.702-1.23-20.154,1.316-33.146h16.287c0,0-3.14,17.248,1.095,30.848c21.392,68.692-4.179,242.343-204.227,196.59L8.64,223.948z"
p=Path2D.new()
p:setSvgPath(banana) --Set the path from a SVG path description
p:setLineThickness(5) -- Outline width
p:setFillColor(0xFFFF80,0.7) --Fill color
p:setLineColor(0x404000) --Line color
p:setAnchorPosition(100,100)
p:setPosition(160,240)
stage:addChild(p)

Methods

Path2D.new creates Path2D object
Path2D:getPathPoints computes location of points along the path
Path2D:setConvex flags the shape as convex
Path2D:setFillColor sets fill color
Path2D:setFontPath sets the path from the outline of a TTFont character
Path2D:setLineColor sets line color
Path2D:setLineThickness sets the thickness of the outline
Path2D:setPath sets path to draw
Path2D:setSvgPath sets path with svg properties
Path2D:setTexture sets texture for fill

Events

Constants