LinearExtrusion

Inheritance: java.lang.Object, com.aspose.threed.A3DObject, com.aspose.threed.SceneObject, com.aspose.threed.Entity

All Implemented Interfaces: com.aspose.threed.IMeshConvertible

public class LinearExtrusion extends Entity implements IMeshConvertible

Linear extrusion takes a 2D shape as input and extends the shape in the 3rd dimension. Example: The following code shows how to use LinearExtrusion to extrude a shape into a solid model.

//Create a new 3D scene
 		Scene scene = new Scene();
 
 		// Initialize the base profile to be extruded
 		var profile = new RectangleShape();
 		profile.setRoundingRadius(0.3);
 
 		// Create left node
 		var left = scene.getRootNode().createChildNode();
 		left.createChildNode(new Box(0.01, 3, 3));
 
 		// Create right node
 		var right = scene.getRootNode().createChildNode();
 		right.createChildNode(new Box(0.01, 3, 3));
 		right.getTransform().setTranslation(new Vector3(5, 0, 0));
 
 		//Perform linear extrusion on left node using center and slices property
 		var l = new LinearExtrusion(profile, 10);
 		l.setCenter(false);
 		l.setSlices(3);
 		l.setTwist(20);
 		left.createChildNode(l);
 
 		// Perform linear extrusion on left node using center and slices property
 		var r = new LinearExtrusion(profile, 10);
 		r.setCenter(true);
 		r.setSlices(3);
 		r.setTwist(90);
 		right.createChildNode(r);

Constructors

ConstructorDescription
LinearExtrusion()Constructor of instance LinearExtrusion.
LinearExtrusion(Profile shape, double height)Constructor of instance LinearExtrusion.

Methods

MethodDescription
equals(Object arg0)
findProperty(String propertyName)Finds the property.
getBoundingBox()Gets the bounding box of current entity in its object space coordinate system.
getCenter()If this value is false, the linear extrusion Z range is from 0 to height, otherwise the range is from -height/2 to height/2.
getClass()
getDirection()The direction of extrusion, default value is (0, 0, 1)
getEntityRendererKey()Gets the key of the entity renderer registered in the renderer
getExcluded()Gets whether to exclude this entity during exporting.
getHeight()The height of the extruded geometry, default value is 1.0
getName()Gets the name.
getParentNode()Gets the first parent node, if set the first parent node, this entity will be detached from other parent nodes.
getParentNodes()Gets all parent nodes, an entity can be attached to multiple parent nodes for geometry instancing
getProperties()Gets the collection of all properties.
getProperty(String property)Get the value of specified property
getScene()Gets the scene that this object belongs to
getShape()The base shape to be extruded.
getSlices()The slices of the twisted extruded geometry, default value is 1.
getTwist()The number of degrees of through which the shape is extruded.
getTwistOffset()The offset that used in twisting, default value is (0, 0, 0).
hashCode()
notify()
notifyAll()
removeProperty(Property property)Removes a dynamic property.
removeProperty(String property)Remove the specified property identified by name
setCenter(boolean value)If this value is false, the linear extrusion Z range is from 0 to height, otherwise the range is from -height/2 to height/2.
setDirection(Vector3 value)The direction of extrusion, default value is (0, 0, 1)
setExcluded(boolean value)Sets whether to exclude this entity during exporting.
setHeight(double value)The height of the extruded geometry, default value is 1.0
setName(String value)Sets the name.
setParentNode(Node value)Sets the first parent node, if set the first parent node, this entity will be detached from other parent nodes.
setProperty(String property, Object value)Sets the value of specified property
setShape(Profile value)The base shape to be extruded.
setSlices(int value)The slices of the twisted extruded geometry, default value is 1.
setTwist(double value)The number of degrees of through which the shape is extruded.
setTwistOffset(Vector3 value)The offset that used in twisting, default value is (0, 0, 0).
toMesh()Convert the extrusion to mesh.
toString()
wait()
wait(long arg0)
wait(long arg0, int arg1)

LinearExtrusion()

public LinearExtrusion()

Constructor of instance LinearExtrusion.

LinearExtrusion(Profile shape, double height)

public LinearExtrusion(Profile shape, double height)

Constructor of instance LinearExtrusion.

Parameters:

ParameterTypeDescription
shapeProfile
heightdouble

equals(Object arg0)

public boolean equals(Object arg0)

Parameters:

ParameterTypeDescription
arg0java.lang.Object

Returns: boolean

findProperty(String propertyName)

public Property findProperty(String propertyName)

Finds the property. It can be a dynamic property (Created by CreateDynamicProperty/SetProperty) or native property(Identified by its name)

Parameters:

ParameterTypeDescription
propertyNamejava.lang.StringProperty name.

Returns: Property - The property.

getBoundingBox()

public BoundingBox getBoundingBox()

Gets the bounding box of current entity in its object space coordinate system.

Returns: BoundingBox - the bounding box of current entity in its object space coordinate system. Example: The following code shows how to calculate the bounding box of a shape

Entity entity = new Sphere();
     entity.setRadius(10);
     var bbox = entity.getBoundingBox();
     System.out.printf("The bounding box of the entity is %s ~ %s", bbox.getMinimum(), bbox.getMaximum());

getCenter()

public boolean getCenter()

If this value is false, the linear extrusion Z range is from 0 to height, otherwise the range is from -height/2 to height/2.

Returns: boolean - If this value is false, the linear extrusion Z range is from 0 to height, otherwise the range is from -height/2 to height/2.

getClass()

public final native Class<?> getClass()

Returns: java.lang.Class

getDirection()

public Vector3 getDirection()

The direction of extrusion, default value is (0, 0, 1)

Returns: Vector3 - The direction of extrusion, default value is (0, 0, 1)

getEntityRendererKey()

public EntityRendererKey getEntityRendererKey()

Gets the key of the entity renderer registered in the renderer

Returns: EntityRendererKey - the key of the entity renderer registered in the renderer

getExcluded()

public boolean getExcluded()

Gets whether to exclude this entity during exporting.

Returns: boolean - whether to exclude this entity during exporting.

getHeight()

public double getHeight()

The height of the extruded geometry, default value is 1.0

Returns: double - The height of the extruded geometry, default value is 1.0

getName()

public String getName()

Gets the name.

Returns: java.lang.String - the name.

getParentNode()

public Node getParentNode()

Gets the first parent node, if set the first parent node, this entity will be detached from other parent nodes.

Returns: Node - the first parent node, if set the first parent node, this entity will be detached from other parent nodes.

getParentNodes()

public ArrayList<Node> getParentNodes()

Gets all parent nodes, an entity can be attached to multiple parent nodes for geometry instancing

Returns: java.util.ArrayList<com.aspose.threed.Node> - all parent nodes, an entity can be attached to multiple parent nodes for geometry instancing

getProperties()

public PropertyCollection getProperties()

Gets the collection of all properties.

Returns: PropertyCollection - the collection of all properties.

getProperty(String property)

public Object getProperty(String property)

Get the value of specified property

Parameters:

ParameterTypeDescription
propertyjava.lang.StringProperty name

Returns: java.lang.Object - The value of the found property

getScene()

public Scene getScene()

Gets the scene that this object belongs to

Returns: Scene - the scene that this object belongs to

getShape()

public Profile getShape()

The base shape to be extruded.

Returns: Profile - The base shape to be extruded.

getSlices()

public int getSlices()

The slices of the twisted extruded geometry, default value is 1.

Returns: int - The slices of the twisted extruded geometry, default value is 1.

getTwist()

public double getTwist()

The number of degrees of through which the shape is extruded.

Returns: double - The number of degrees of through which the shape is extruded.

getTwistOffset()

public Vector3 getTwistOffset()

The offset that used in twisting, default value is (0, 0, 0).

Returns: Vector3 - The offset that used in twisting, default value is (0, 0, 0).

hashCode()

public native int hashCode()

Returns: int

notify()

public final native void notify()

notifyAll()

public final native void notifyAll()

removeProperty(Property property)

public boolean removeProperty(Property property)

Removes a dynamic property.

Parameters:

ParameterTypeDescription
propertyPropertyWhich property to remove

Returns: boolean - true if the property is successfully removed

removeProperty(String property)

public boolean removeProperty(String property)

Remove the specified property identified by name

Parameters:

ParameterTypeDescription
propertyjava.lang.StringWhich property to remove

Returns: boolean - true if the property is successfully removed

setCenter(boolean value)

public void setCenter(boolean value)

If this value is false, the linear extrusion Z range is from 0 to height, otherwise the range is from -height/2 to height/2.

Parameters:

ParameterTypeDescription
valuebooleanNew value

setDirection(Vector3 value)

public void setDirection(Vector3 value)

The direction of extrusion, default value is (0, 0, 1)

Parameters:

ParameterTypeDescription
valueVector3New value

setExcluded(boolean value)

public void setExcluded(boolean value)

Sets whether to exclude this entity during exporting.

Parameters:

ParameterTypeDescription
valuebooleanNew value

setHeight(double value)

public void setHeight(double value)

The height of the extruded geometry, default value is 1.0

Parameters:

ParameterTypeDescription
valuedoubleNew value

setName(String value)

public void setName(String value)

Sets the name.

Parameters:

ParameterTypeDescription
valuejava.lang.StringNew value

setParentNode(Node value)

public void setParentNode(Node value)

Sets the first parent node, if set the first parent node, this entity will be detached from other parent nodes.

Parameters:

ParameterTypeDescription
valueNodeNew value

setProperty(String property, Object value)

public void setProperty(String property, Object value)

Sets the value of specified property

Parameters:

ParameterTypeDescription
propertyjava.lang.StringProperty name
valuejava.lang.ObjectThe value of the property

setShape(Profile value)

public void setShape(Profile value)

The base shape to be extruded.

Parameters:

ParameterTypeDescription
valueProfileNew value

setSlices(int value)

public void setSlices(int value)

The slices of the twisted extruded geometry, default value is 1.

Parameters:

ParameterTypeDescription
valueintNew value

setTwist(double value)

public void setTwist(double value)

The number of degrees of through which the shape is extruded.

Parameters:

ParameterTypeDescription
valuedoubleNew value

setTwistOffset(Vector3 value)

public void setTwistOffset(Vector3 value)

The offset that used in twisting, default value is (0, 0, 0).

Parameters:

ParameterTypeDescription
valueVector3New value

toMesh()

public Mesh toMesh()

Convert the extrusion to mesh.

Returns: Mesh

toString()

public String toString()

Returns: java.lang.String

wait()

public final void wait()

wait(long arg0)

public final void wait(long arg0)

Parameters:

ParameterTypeDescription
arg0long

wait(long arg0, int arg1)

public final void wait(long arg0, int arg1)

Parameters:

ParameterTypeDescription
arg0long
arg1int