feature_edges(display) Filter feature_edges(display)
NAME
feature_edges - generate boundary or sharp edges from display data
DESCRIPTION
Feature_edges takes as input a display_data object (or
filter) and on output generates lines. The lines are created along the boundaries of polygon or triangle strip
meshes, or along sharp angles (i.e., features edges)
between polygons or feature edges. (Lines in the input
display_data are also passed to the output).
It is possible to turn on/off the generation of lines
along feature edges or boundaries. The feature angle may
also be specified.
(NOTE: Boundary edges are edges used by only one polygon/triangle strip, or are non-manifold edges (edges used
by three or more polygons/triangle strips).
SUPERCLASS
adjacency_filter
INSTANCE VARIABLES
feature_angle
angle in degrees corresponding to dihedral angle
between adjacent polygons. The feature_angle
defines whether an edge exists between polygons.
boundary_edges
boolean to control boundary edges are generated.
By default boundary edge generation is on.
feature_edges
boolean to control whether feature edges are generated. By default feature edge generation is on.
MESSAGES
feature_angle= value
set the value (in degrees) of the feature edge
angle.
feature_angle+ value
add to the value (in degrees) of the feature edge
angle.
feature_angle?
set the value (in degrees) of the feature edge
angle.
boundary_edges_on!/off!
turn on/off boundary edge generation.
boundary_edges?
get the value of the boundary_edges instance variable.
boundary_edges= value
set the value of the boundary_edges instance variable.
feature_edges_on!/off!
turn on/off feature edge generation.
feature_edges?
get the value of the feature_edges instance variable.
feature_edges= value
set the value of the feature_edges instance variable.
EXAMPLE
display_data new: dd
points=(
0,0,0,
1,0,1,
2,0,1,
3,0,0,
3,1,0,
2,1,1,
1,1,1,
0,1,0,
)
polygons=(
4, 1,2,7,8,
4, 2,3,6,7,
4, 3,4,5,6,
)
;
feature_edges new: fedges
data_in= dd
feature_angle= 30
;
display_lines new: draw_edges
data_in= fedges
;
actor new: a
modeller= draw_edges
;
renderer new: aren
actors=[actor instances?]
render!
;
SEE ALSO
adjacency_filter, feature_normals, triangle_strip_filter,
decimate, display_filter, display_data
Please send comments and suggestions toconsult@rpi.edu