PolyToolsTopology : GlobalUtilityPlugin

 

   

Graphite Modeling Tools - Quick Navigation

The PolyToolsTopology GlobalUtilityPlugin introduced in 3ds Max 2011 exposes an interface that provides MAXScript access to the Graphite Topology tools.

The functionality was first implemented in 3ds Max 2010 using different functions that were not officially supported as MAXScript tools. This interface consolidates all relevant properties and methods and lets MAXScript users apply them in their own tools.

Topic Navigation:      

Wall

Tiles1

Tiles2

Brick

Hive

Mosaic

Floor1

Floor2

Skin

Holer

EdgeDirection

Simplify

Chaos

Fours

SmoothStar

Cross

Planks1

Planks2

Planks3

Planks4

Tatter

ScrapVerts

Constructor:

Class instances not creatable by MAXScript 

   

PolyToolsTopology interfaces:

Interface: PolyToolsTopology 

Methods:

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Wall () 

Generates a wall type topology with bricks of different sizes.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Wall()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Tiles1 () 

Generates a tile type topology.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step2:
PolyToolsTopology.Tiles1()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Tiles2 () 

Generates a different tile type topology.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step2:
PolyToolsTopology.Tiles2()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Brick () 

Generates a brick-like topology.

Requires exactly one edge to be selected. The direction of the selected edge determines which way is "up".

The method will only succeed if the selected edge is within the quad topology.

Returns true on success, false if the above conditions are not met.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Mosiac()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Hive () 

Generates a beehive-like topology.

Requires exactly one edge to be selected. The direction of the selected edge determines which way is "up".

The method will only succeed if the selected edge is within the quad topology.

Returns true on success, false if the above conditions are not met.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 2 --switch to Edge level
PolyOp.SetEdgeSelection p #{61} --select one edge to define up direction
--Step 2:
PolyToolsTopology.Hive()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Mosiac () 

Generates a mosaic topology with random bricks of different sizes.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step2:
PolyToolsTopology.Mosiac()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Floor1 () 

Works like a combination of .EdgeDirection() and .Tiles1() . First turns the edge direction to crossing direction, then removes random edges to create tiles of different sizes.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Floor1()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Floor2 () 

Works like a combination of .EdgeDirection() and .Wall() . First turns the edge direction to crossing direction, then removes edges to create bricks of different sizes.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Floor2()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Skin () 

Generates a skin type topology with rounded patches.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Skin()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Holer () 

Generates "holes" in the topology. See also .Tatter() further on this page.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Holer()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.EdgeDirection () 

Changes the direction of the topology to a crossing direction.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.EdgeDirection ()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Simplify () 

Simplifies the topology by removing random parts here and there, but keeping areas of edges intact.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Simplify ()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Chaos () 

When applied to a grid of quads, generates a chaotic topology with randomly shaped patches.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Chaos()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Fours () 

When applied to a grid of quads, generates a tile type topology that consists of mostly larger quads.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Fours()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.SmoothStar () 

When applied to a grid of quads, generates a random smoothed stars topology.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.SmoothStar ()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Cross () 

When applied to a grid of quads, generates a topology with cross-like patters.

Returns true on success, false on failure.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Cross()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Planks1 () 

When applied to a grid of quads, generates a plank type topology with "planks" of different sizes.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Planks1()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Planks2 () 

When applied to a grid of quads, generates a topology with broader "planks" than the .Planks1() method.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Planks2()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Planks3 () 

When applied to a grid of quads, generates topology similar to the .Planks1() and .Planks2() methods, but with crossing planks.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Planks3()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Planks4 () 

When applied to a grid of quads, generates a topology similar to the previous three methods, but with longer planks.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Planks4()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.Tatter <integer>size <integer>iterations <integer>smooth 

Generates "holes" in the topology, separated by rows of polygons.

The first argument determines the overall size of the generated holes.

The second argument determines the number of different sizes for the generated holes.

The third argument determines how rounded the generated holes will be.

Returns true on success, false on failure.

EXAMPLES:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Tatter 1 1 1
 

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Tatter 2 1 1
 

-- Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Tatter 3 1 1
 

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Tatter 1 2 1
 

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 4 --switch to Edge level
--Step 2:
PolyToolsTopology.Tatter 1 10 1
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

<bool>PolyToolsTopology.ScrapVerts () 

Removes vertices shared by only two edges.

EXAMPLE:

--Step 1:
p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
convertTo p Editable_Poly --convert to EPoly
select p --select the plane
max modify mode --switch to modify panel
subObjectLevel = 1 --switch to Edge level
PolyOp.SetEdgeSelection p #{105} --select one central edge
for i = 1 to 3 do p.GrowSelection selLevel:#edge --and grow the selection
p.Remove selLevel:#Edge --then remove the selected edges
PolyOp.SetEdgeSelection p #{5,8,11} --select a portion of a loop
p.Remove selLevel:#Edge --and remove it, while leaving some stray vertices
--Step 2:
PolyToolsTopology.ScrapVerts ()
 

 

   

Back To Topic Navigation

 

   

Graphite Modeling Tools - Quick Navigation

See Also