ShapeMap : textureMap
ShapeMap - superclass: textureMap; super-superclass:material - 35:0 - classID: #(1917470054L, 1344173505L)
This texture map can render one or more scene shape objects into a procedural texture map. Available in in 3ds Max 2017 and higher.
Constructor:
ShapeMap...
Properties:
Parameters Rollout
Filtering Group Of Controls
<ShapeMap>.filter BooleanClass default: true -- boolean
Get/set the state of the "Filter Result" checkbox.
<ShapeMap>.mipmap BooleanClass default: true -- boolean
Get/set the state of the "Mip Mapping" checkbox.
Cropping / Placement Group Of Controls
<ShapeMap>.applycrop BooleanClass default: false -- boolean
Get/set the state of the "Apply" checkbox.
<ShapeMap>.croporplace Integer default: 0 -- integer
Get/set the state of the "Crop / Place" radio buttons.
Possible values are:
0 - Crop (default)
1 - Place
<ShapeMap>.crop_u Float default: 0.0 -- animatable; float; Clip_U_Offset
Get/set the value of the "U" spinner.
<ShapeMap>.crop_v Float default: 0.0 -- animatable; float; Clip_V_Offset
Get/set the value of the "V" spinner.
<ShapeMap>.crop_w Float default: 1.0 -- animatable; float; Clip_U_Width
Get/set the value of the "W" spinner.
<ShapeMap>.crop_h Float default: 1.0 -- animatable; float; Clip_V_Width
Get/set the value of the "H" spinner.
<ShapeMap>.Jitter BooleanClass default: false -- Boolean
Get/set the state of the "Jitter" checkbox.
Used only when .croporplace
is set to 1 – Place.
<ShapeMap>.jitteramt Float default: 1.0 -- animatable; float; Jitter_Placement
Get/set the value of the "Jitter" spinner.
Used only when .croporplace
is set to 1 – Place.
Mono Channel Output Group Of Controls
<ShapeMap>.monoOutput Integer default: 1 -- integer
Get/set the state of the "Mono Channel Output" radio buttons.
Possible values are:
0 - RGB Intensity
1 - Alpha (default)
RGB Channel Output Group Of Controls
<ShapeMap>.rgbOutput Integer default: 0 -- integer
Get/set the state of the "RGB Channel Output" radio buttons.
Possible values are:
0 - RGB (default)
1 - Alpha as Gray
Alpha Source Group Of Controls
<ShapeMap>.alphasource Integer default: 2 -- integer; Alpha_Source
Get/set the state of the "Alpha Source" radio buttons.
Possible values are:
0 - Image Alpha
1 - RGB Intensity
2 - None (Opaque) (default)
Shape Parameters Rollout
<ShapeMap>.shapeobject UndefinedClass default: undefined -- node
Get/set the shape object used to generate the map.
Corresponds to the "Shape Object" pickbutton in the UI.
Any valid shape object is acceptable, including the legacy Text shape.
TextPlus is not a shape node - see the TextMap : TextureMap class for creating textures using the TextPlus object.
<ShapeMap>.usefillcolor BooleanClass default: true -- boolean
Get/set the state of the "Fill Color" checkbox.
<ShapeMap>.fillcolor Color default: (color 0 0 255) -- animatable; RGB color; Controller Scaling: ([1,1,1] : (color 255 255 255))
Get/set the value of the "Fill Color" color.
<ShapeMap>.outlinecolor Color default: (color 0 0 0) -- animatable; RGB color; Controller Scaling: ([1,1,1] : (color 255 255 255))
Get/set the value of the "Line Color" color.
<ShapeMap>.bgcolor Color default: (color 255 255 255) -- animatable; RGB color; Controller Scaling: ([1,1,1] : (color 255 255 255))
Get/set the value of the "Background Color" color.
<ShapeMap>.fillbg BooleanClass default: true -- boolean
Get/set the state of the "Fill Background" checkbox.
Open Shapes Group Of Controls
<ShapeMap>.renderopen BooleanClass default: true -- boolean
Get/set the state of the "Render" checkbox.
<ShapeMap>.endtype Integer default: 0 -- integer
Get/set the state of the "Open Shapes (End Type)" radio buttons.
Possible values are:
0 - Square Ends (default)
1 - Rounded Ends
Closed Shapes Group Of Controls
<ShapeMap>.filledclosed BooleanClass default: true -- boolean
Get/set the state of the "Render Fill" checkbox.
<ShapeMap>.outlinedclosed BooleanClass default: false -- boolean
Get/set the state of the "Render Outline" checkbox.
<ShapeMap>.stricthierarchy BooleanClass default: false -- boolean
Get/set the state of the "Strict Hierarchy" checkbox.
Outlines Group Of Controls
<ShapeMap>.outlinewidth Float default: 1.0 -- animatable; float
Get/set the value of the "Width" spinner.
It defines the thickness of the outlines.
Hierarchies" Group Of Controls
<ShapeMap>.renderchildren BooleanClass default: false -- boolean
Get/set the state of the "Render Children" checkbox.
<ShapeMap>.renderroot BooleanClass default: true -- boolean
Get/set the state of the "Render Root" checkbox.
<ShapeMap>.mergeshapes BooleanClass default: false -- boolean
Get/set the state of the "Merge Shapes" checkbox.
Map Boundary Group Of Controls
<ShapeMap>.boundstype Integer default: 0 -- integer; _BoundsType
Get/set the state of the "Map Boundary" radio buttons.
Possible values are:
0 - Shape Bounds (default)
1 - Manual
2 - Pick
<ShapeMap>.manualwidth Float default: 100.0 -- float
Get/set the value of the "Width" spinner.
Used only when .boundstype
is set to 1 – Manual.
<ShapeMap>.manualheight Float default: 100.0 -- float; ManualHeeight
Get/set the value of the "Height" spinner.
Used only when .boundstype
is set to 1 – Manual.
<ShapeMap>.boundsobject UndefinedClass default: undefined -- node
Get/set the scene objects to define the bounds.
Used only when .boundstype
is set to 2 – Pick.
<ShapeMap>.hwbitmapsize Integer default: 256 -- integer
Get/set the value of the "HW Bitmap size" slider.
Controls the size of the hardware bitmap used for viewport display.
Coordinates Rollout
<ShapeMap>.coords StandardUVGen default: MtlBase:Placement -- maxObject; Coordinates; SubAnim
See UVGenClass
class for related properties.
Not Exposed To The UI
<ShapeMap>.output StandardTextureOutput default: MtlBase:Output -- maxObject; SubAnim
See TexOutputClass
class for related properties.
ShapeMap interfaces:
Interface: IMtlRender_Compability_MtlBase
Properties:
Methods:
Actions:
EXAMPLE:
( resetMaxFile #noprompt --reset the scene theRadius=10.0 --base circle radius in world units theThickness=3.0 --outline thickness in pixels c1 = circle radius:theRadius pos:[0,0,0] adaptive:true --base circle dist = theRadius for i = 0 to 360 by 60 do --draw 6 circles at distance equal to the radius, and parent to the base c2 = circle radius:theRadius pos:[dist*(cos i),dist*(sin i),0] adaptive:true parent:c1 dist = 2*theRadius*(sin 60) for i = 30 to 360 by 60 do --draw 6 more circles at the intersections of the previous 6, and parent to the base c2 = circle radius:theRadius pos:[dist*(cos i),dist*(sin i),0] adaptive:true parent:c1 dist = 2*theRadius for i = 0 to 360 by 60 do --draw 6 circles at distance 2*radius, and parent to the base c2 = circle radius:theRadius pos:[dist*(cos i),dist*(sin i),0] adaptive:true parent:c1 sm = shapeMap() --create a shape map meditMaterials[1] = sm --display it in the first slot of the material editor matEditor.mode = #basic --set the material editor to compact mode matEditor.open() --open the material editor if it is not open yet sm.shapeobject = c1 --set the shape of the map to the base circle sm.renderroot = true --enable both the root... sm.renderchildren = true --...and the children of the hierarchy to render sm.outlinecolor = yellow --set the line color to yellow sm.bgcolor = color 0 128 255 --set the background to sky blue sm.filledclosed = false --disable the filling of closed shapes sm.outlinedclosed = true --enable the outlines of closed shapes sm.outlinewidth = theThickness --set the outline thickness in pixels sm.boundstype = 1 --switch to manual bounds theSize = 6*theRadius --calculate the size of the bitmap as 6 times the radius theSize+= theSize*0.01 --add 1% padding sm.manualwidth = sm.manualheight = theSize --set the width and height to the same value smat = standard() --create a standard material smat.diffusemap = sm --set the shapeMap in the diffuse map slot p = plane width:200 length:200 pos:[200,0,0] --create a plane primitive p.material = smat --assign the material showTextureMap smat sm true --show the map in the viewport bm = bitmap 1024 1024 --create a bitmap renderMap sm into:bm --render the texture into the bitmap display bm --display the bitmap max zoomext sel all )