Component:Space Warping

From DocR21

Jump to: navigation, search


All Warping Articles | C++ APIs | Scheme Extensions | Global Options
edit  

Space Warping Component


The Space Warping Component (WARP) uses the ACIS law functionality to warp entities and parts. Warping includes modifications such as warping according to an input law (simply called "warping"), bending, twisting, stretching, and nonuniform scaling. Laws also provide support for space warping in conic surfaces and conic trough surfaces.

WARP provides APIs and Scheme extensions to support warping with laws. (Refer to the Laws Component for details on the law classes.)

The low-level implementation of laws in Scheme uses APIs and law string parsing to create C++ classes from law function strings enclosed in quotation marks. In Scheme, the strings used to define laws are not case-sensitive, but when returned from a law function, the lower-case letters are converted to upper-case letters.

The law functions are very similar to common mathematical notation, and are parsed the way that mathematical equations are. For example, the equation f(x,y) = x2 + cos(x) − sin(y) becomes the law function X^2+COS(X)-SIN(Y), with a two-dimensional domain and a one-dimensional range.


edit  

Space Warping Operations



Operation Description
Warping with Laws Warp an ACIS body, according to a one-to-one law mapping R3 to R3.
Bending Bend a solid model around a given axis, within a given region.
Twisting Twist all or part of a body about a specified axis.
Stretching Stretch a body along the given axis, within a given region.



edit  

Space Warping Interface


Warping

outcome api_space_warp(body_to_warp, law_defining_deformation)

Bending

outcome api_bend_entity (body_to_bend, axis_definition, twist_direction, twist_ammount)

Twisting

outcome api_twist_entity (body_to_twist, base positions, angles)

Stretching

outcome api_stretch_entity (body_to_stretch, limiting positions, distances, continuity)

Global Options

See Warping Options



edit  

See Also

Personal tools
Live