Title: LATTICE TECHNOLOGY, INC.
1XVL Reducer TutorialFor Version 4.0 and later
2Objectives
- By the end of this tutorial, you will be able to
perform the following operations from Command
Prompt - remove smaller holes than specified diameter
- remove invisible elements
- remove smaller elements than specified size
- remove hidden shells
- remove wire / independent shells
- remove layers
- remove materials
3Agenda
- Preserving Empty Body Groups
- Removing Hidden Shells
- Removing Independent Wire and Point Shells
- Removing or Simplifying Small Geometries
- Removing Layers
- Removing Materials
- Aggregating Faces of Surfaces and Edges of Wire
Shells - Reducing Control Points of a Surfaces and Edges
- Removing Small Holes and Projections
- Removing Invisible Surfaces from Outside
- Converting P-XVL File to V-XVL File
- Converting XVL File to Polygon-based XVL File
4Necessary Files
- In order to execute XVL Reducer, you need the
following files - xvlreducer.exe Command line application main
unit - xerces-c_1_3x.dll Xerces-C DLL for
reading/writing - xvl-lock_1_2.dll DLL to be used by
xvlreducer.exe - xvl-ulock_1_0.dll DLL to be used by
xvlreducer.exe - MSVCP60.dll DLL to be used by xvlreducer.exe
These files are located in \Lt_Reducer\Bin\
5Common Syntax
Basic Format
xvlreducer.exe -v xvl_version -l host_name
port_number -u user -g user_password -p
file_password options... ltinput_filegt
ltoutput_filegt
Parameter Description
-v xvl_version Specifies the version of the XVL file when writing an XVL file.
-l host_name port_number Specify host name and port number of license server.
-u user Specify a user group name. (When XVL file is protected by XVL Signer)
-g user_password Specify a user group password. (When XVL file is protected by XVL Signer)
-p file_password Specify a file specific password. (When XVL file is protected by XVL Signer)
ltinput_filegt Specify an XVL file to input.
ltoutput_filegt Specify an XVL file to output.
6Processing for all Model types
7Preserving Empty Body Groups -b
- The -b option will not delete Body groups when
other options removes the shells originally
defined inside those groups.
Basic Format
xvlreducer.exe b lt Input XVLgt ltOutput XVLgt
This option is prepared for keeping the groups
originally defined in the VRML2 format. Without
this option, XVL Reducer removes Body groups that
have no shells after the reduction process.
8Removing Hidden Shells -h
- The h option will delete hidden shells.
Basic Format
xvlreducer.exe h lt Input XVLgt ltOutput XVLgt
Hidden shells are deleted.
Parts are hidden.
Output
9Removing Independent Wire and Point Shells -w
- The w option will delete independent wire (edge)
and point shells.
Basic Format
xvlreducer.exe w ltmodegt lt Input XVLgt ltOutput
XVLgt
Output
Shells are deleted.
Parameter Description
mode Select one processing from each as the operation mode and specify the sum value. 0 Do not remove wire shells. 1 Remove wire shells. 0 Do not remove isolated point shells. 2 Remove isolated point shells.
10Removing or Simplifying Small Geometries -o
- The o option will remove or simplify smaller
geometries than the specified size.
Basic Format
xvlreducer.exe o mode ltlengthgt lt Input XVLgt
ltOutput XVLgt
Parameter Description
-o mode Select one processing from each as the operation mode and specify the sum value. 0 Determine for each shell whether the relevant shape is small or not, and process it. 1 Determine for each body whether the relevant shape is small or not, and process it. 0 Remove any small shapes 4 Out of small shapes, convert solid/surface shells into a rectangular solid. Remove wire shells and isolated point shells.
length Specify the value to use when determining whether it is small or not.
Output
Shells are deleted.
11Removing Layers -y
- The y option will remove all layers.
Basic Format
xvlreducer.exe y lt Input XVLgt ltOutput XVLgt
Output
All layers are deleted.
12Removing Materials -m
- The m option will remove all materials.
Basic Format
xvlreducer.exe m lt Input XVLgt ltOutput XVLgt
Output
All materials are deleted.
13Processing for P-XVL Surface Models
14Gluing surfaces and edge -s
- The m option will glue surfaces of surface
shells and edge lines of wire shells.
Basic Format
xvlreducer.exe s ltmodegt lttolerancegt lt Input
XVLgt ltOutput XVLgt
Parameter Description
mode Always specify "2" as the operation mode (for future expansion).
tolerance Specify the tolerance to determine whether to glue or not.
The recommended range for the tolerance value
is 0.001 to 0.1. Larger tolerance values may
cause XVL Reducer to glue unexpected surfaces and
create degenerate geometries.
15Reducing Control Points of a Surfaces and Edges
-c
- The m option will reduces the number of control
points of Curved Surfaces and Lines for surface
shells and Curved Lines of wire shells.
Basic Format
xvlreducer.exe c ltmodegt lttolerancegt lt Input
XVLgt ltOutput XVLgt
Parameter Description
mode Always specify "2" as the operation mode (for future expansion).
tolerance Specify the tolerance for reducing the number of control points.
The recommended range for the tolerance value
is 0.001 to 10.0. This is the same tolerance
value that is used for simplification when
converting CAD files.
16Removing Holes and Protrusions -e
- The e option will delete holes and progrusions.
Basic Format
xvlreducer.exe e ltmodegt ltlengthgt lt Input XVLgt
ltOutput XVLgt
Output
Small holes and protrusions are deleted.
Parameter Description
mode Always specify "0" as the operation mode (for future expansion).
tolerance Specify a value to determine the size of the hole and protrusion.
17Converting P-XVL File to V-XVL File -z
- The -z option will convert P-XVL file into V-XVL
file.
Basic Format
xvlreducer.exe -v 10 -z ltmodegt lttolerancegt lt
Input XVLgt ltOutput XVLgt
Output
P-XVL
V-XVL
Parameter Description
mode Select one of the following processing as the operation mode and specify the value. Use the mode 16 as default. 0 Do not consolidate shells. 16 Consolidate shells belonging to the body for each type, such as "surface", "wire", "isolated point", to reduce the number of shells.
tolerance Specify the tolerance (conversion precision) for conversion into a V-XVL model.
18Processing for P-XVL V-XVL Surface Models
19Removing Invisible Surfaces -i
- The i option removes invisible surfaces hidden
behind outer surfaces.
Basic Format
xvlreducer.exe i ltmodegt ltdivnumgt lt Input XVLgt
ltOutput XVLgt
Parameter Description
mode Select one processing from each as the operation mode and specify the sum value. 0 Determine visibility of the whole model. Determine visibility per part. 0 Faces visible through transparent faces are considered as visible. 4 Surfaces visible only through transparent faces are considered as invisible. 0 Tessellation parameters are automatically determined. 8 Tessellation parameters are manually specified.
divnum Regarding the way to settle the viewpoint on visibility determination, specify the number of subdivision of the bounding sphere.The viewpoint is determined by viewing the center of the sphere from the vertices generated by this subdivision.
Invisible surfaces from the specified viewpoints
are deleted.
20Removing Invisible Surfaces Tessellation
Parameters
- When 8 is specified for mode, following
parameters need to be specified.
Basic Format
xvlreducer.exe i 8 ltdivnumgt tstype tsdiv
tstol lt Input XVLgt ltOutput XVLgt
Parameter Description
tstype Specify how to divide a polygon. The meaning of "tstype" is as follows (corresponding to division type name available for XVL Player Ver. 8) 1 Rough 2 Fast 3 Normal 4 Fine 5 Analytic
tsdiv Specify the maximum number of polygon divisions. "tsdiv" has the same meaning as "Polygon division -gt Number of division in XVL Player Ver. 8.
tstol Specify precision of a polygon. If a negative value is specified, the division precision is the model size multiplied by the absolute value of tstol.
21Extended Culling Option (1)
- You can delete all surfaces that are not visible
from specified cameras.
Basic Format
xvlreducer.exe i ltmodegt ltdivnumgt --viewpoints
ltview point listgt aspect lt Input XVLgt ltOutput XVLgt
Delete surfaces that are outside the view of the
specified camera(s).
Camera viewpoint
Camera viewpoint
Viewpoint list is a text file that lists cameras
to apply.
Camera-1 Camera-2
Parameter Description
aspect Specifies the aspect ratio of the view plane for visibility judgment. Specify "0" or a smaller value in usual cases.
View point list
Requires Extended Culling option.
22Extended Culling Option (2)
- With extended culling option, geometries are
deleted in shell level.
Basic Format
xvlreducer.exe i ltmodegt ltdivnumgt --viewpoints
ltview point listgt aspect --delete-shells mode lt
Input XVLgt ltOutput XVLgt
Because some surfaces are deleted, the shell
geometries are broken.
If any surfaces of a shell are visible from the
camera viewpoint(s), all the surfaces in the
shell are maintained.
Camera viewpoint
Camera viewpoint
No Delete-shells option
With Delete-shells option
Parameter Description
mode When "mode" is 0, shells are deleted and when it is 1, they are deactivated.
Requires Extended Culling option.
23Converting to Polygon-based XVL Model -f
- The -z option will convert P-XVL file into V-XVL
file.
Basic Format
xvlreducer.exe -f ltmodegt lttolerancegt lttypegt
ltdivnumgt ltInput XVLgt ltOutput XVLgt
Output
XVL surface model
Polygon-based XVL model
Parameter Description
mode Select one of the following processes as the operation mode and specify the value. 0 Do not consolidate shells. 16 Consolidate shells belonging to the body for each type, such as "surface", "wire", "isolated point", to reduce the number of shells.
tolerance Specify the tolerance (conversion precision) for conversion into a V-XVL model.
type Specify how to divide a Polygon or Polyline. (same as tstype for i option)
divnum Specify the maximum number of Polygon / Polyline division.
24Processing for Polygon XVL Models
25Reducing Polygons -r
- The -r option will perform polygon reduction for
a Polygon Model.
Basic Format
xvlreducer.exe -r ltmodegt ltratiogt ltanglegt ltInput
XVLgt ltOutput XVLgt
Parameter Description
mode Select one processes from each as the operation mode and specify the sum value. 0 Do not maintain the regularity of the polygon connection. 2 Maintain the regularity of the polygon connection, whenever possible. 0 Do not consolidate shells. 16 Consolidate shells belonging to the body for each type, such as "surface", "wire", "isolated point", to reduce the number of shells.
ratio Specify the summarization rate of polygon reduction. (less than 1.0)
angle Specify the crease angle for polygon reduction. (0 to 180)
Output
Reduced polygon model
26Questions?
- E. support_at_lattice3d.com
- T. 1.415.274.1670
- F. 1.415.274.1671
- W. www.lattice3d.com