ACIS_Reader can read files compliant with the ACIS formats from R1.5 to R33.0 (2023 1.0.1).
ACIS_Writer can write files compliant with the ACIS formats from R2.0 to R33.0 (2023 1.0.1). By default, a file is created using R7.0 specification.
Reader supports the text (*.sat, Save As Text) and binary (*.sab, Save As Binary) formats. Writer supports text format only.
The reader may also be used by external DXF and DWG file parsers which need to parse and convert contents of 3D body sections in DXF/DWG files. To support that use case ACIS_Reader::ReadMemory() is to be used to parse memory buffer prepared by the external parser.
The DXF/DWG files are typically created by Autodesk Shape Manager (ASM) and ACIS sections in these files may deviate from the format prescribed by the original ACIS kernel. In particular, ASM may use specific curve and surface sub-types (e.g. helix_int_cur or loft_spl_sur, etc) which are not in the scope of original ACIS file format. CAD Exchanger will automatically recognize these specific subtypes as well as other pecualirities used by ASM. However some such subtypes may only be parsed and not converted into target B-Spline surfaces unless an approximated B-Spline representation has been provided in the file. In the latter case, this provided approximation will be used during conversion (as mentioned in Known Limitations).
Import | Export |
---|---|
|
|
Below tables shows how ACIS entities are mapped into CAD Exchanger entities after import.
ACIS Entity | CAD Exchanger Entity |
---|---|
body | One of:
|
transform | ModelData_Transformation |
ACIS Entity | CAD Exchanger Entity | Note |
---|---|---|
lump | One of: | The type of body(-ies) depends on type of child entities |
shell | ModelData_Shell | |
face | ModelData_Face | |
wire | ModelData_Wire | |
coedge | ModelData_Edge | |
edge | ||
vertex | ModelData_Vertex |
ACIS Entity | CAD Exchanger Entity |
---|---|
Surfaces | |
cyl_spl_sur | One of: |
off_spl_sur | One of: |
rot_spl_sur | One of: |
pipe_spl_sur | One of: |
exact_spl_sur | ModelData_BSplineSurface |
net_spl_sur | |
rb_blend_spl_sur | |
skin_spl_sur | |
sum_spl_sur | |
sweep_spl_sur | |
tube_spl_sur | |
var_blend_spl_sur | |
vbl_surf | |
cone | One of: |
plane | ModelData_Plane |
sphere | ModelData_SphericalSurface |
torus | One of:
|
Curves | |
int_cur | ModelData_BSplineCurve |
helix_int_cur | |
offset_int_cur | |
proj_int_cur | |
ellipse | One of: |
straight | ModelData_Line |
The ACIS import parameters are controlled by ACIS_ReaderParameters. The following table contains a list of parameters for ACIS import:
Parameter | Default value | Description |
---|---|---|
TryCreateSolids() | true | Specifies if a solid should be created for each closed shell. |
The ACIS export parameters are controlled by ACIS_WriterParameters. The following table contains a list of parameters for ACIS export:
Parameter | Default value | Description |
---|---|---|
TargetACISVersion() | 700 | Specifies a target version of a ACIS-SAT format to be used when writing. The parameter has a form major_version * 100 + minor_version, i.e. to set a target version 7.0 you should specify 700. Valid range is [200,2800]. The value of 900 (which would correspond to ACIS R9) should not be used, as ACIS does not provide this format version explicitly. Use value of 800 instead. No check is performed whether the parameter has a correct value. |