Import
Bring external CAD files, 3D models, and KCL code into Zoo Design Studio in two steps:
- Add files to your project using drag and drop, the Local Drive picker, or KCL Samples.
- Import a file into your model using the Import command.
Adding a file makes it available in Project Files. Importing it references that file from the model's KCL code so its geometry can appear in the Scene.
Add File to Project
Choose one of the methods below to add files. In the browser, use drag and drop for files on your computer. The Local Drive picker is available only in the desktop app.
Drag and Drop (Browser and Desktop)
- Open a project, or create and open a new project.
- Open the Project Files panel (File Explorer).
- Drag supported files or folders from your computer's file manager (such as Finder or Windows File Explorer) into Project Files. Drop them onto a project folder to add them there.
- Confirm that the files appear in Project Files.
For ZIP archives, unzip them on your computer first, then drag the extracted files and folders into Project Files. Keep the folder structure intact so relative file references continue to work.
Local Drive Picker (Desktop Only)
- Open the Command Bar.
- Select Add file to project.
- Choose Local Drive as the source.
- Choose a new or existing project and enter or select its name.
- Browse to the file location.
- Select the file to add.
KCL Samples (Browser and Desktop)
- Open the Command Bar.
- Select Add file to project.
- Choose KCL Samples as the source if prompted. In the browser, this source is selected automatically.
- Select a sample from the library.
- Select the destination project. The desktop app also lets you create a new project from the sample.
Once your files are in the project, continue below to import one into a model. To edit a .kcl file
as its own model, open it directly from Project Files.
Import Into a Model
Use the Import command to bring an existing project file into the current model, regardless of how you added the file to the project.
For CAD and 3D model files in either the browser or desktop app:
- Open the KCL file for the model you want to import into, such as
main.kcl. - Right-click on the the CAD or 3D model file from Project Files and click Import into my current file.
- Confirm the local variable name and any format-specific options, then submit the command.
You can also launch the same Import command from the Command Bar or toolbar and select a file already in the project. The command was previously named Insert and can be found by searching for either name in the Command Bar.
The command adds an import statement to the active KCL file. For example:
You can also write an import statement directly in the Code Editor, including to reuse another
.kcl file. See KCL modules for syntax and examples.
Supported Import Formats
“Supported” means the current Design Studio import workflow accepts the format. It does not mean that external geometry becomes parametrically editable. Formats under active development are explicitly labeled “Experimental.”
For proprietary CAD formats, compatibility can vary with the application version that produced the file. An accepted extension does not guarantee complete version coverage or preservation of native feature history.
CAD Formats
STEP (.step, .stp)
- 🧪 Experimental: STEP import supports read-only 3D geometry. Imported geometry cannot be edited, and 2D STEP drawings are not supported.
- Standard for the Exchange of Product model data (ISO 10303)
- Industry-standard neutral CAD format
- Preserves solid geometry, assemblies, and product structure
- Best format for high-fidelity CAD interchange
- Recommended for importing from SolidWorks, CATIA, NX, Creo, Inventor, Fusion 360, Onshape
- For STEP-specific syntax, export settings, and troubleshooting, see STEP Import
SolidWorks Part (.sldprt)
- Supported for importing external SolidWorks part geometry
- Imported geometry does not include editable feature history
- Useful for visualization, measurement, references, and downstream modeling operations
ACIS (.sat, .sab)
- Accepted for importing ACIS solid-model geometry
- Includes both text (
.sat) and binary (.sab) ACIS files - Imported geometry does not include editable feature history
CATIA Part (.catpart)
- Accepted for importing CATIA part geometry
- Imported geometry does not include editable CATIA feature history
Creo and Siemens NX Part (.prt, versioned .prt.N)
- Unversioned
.prtfiles can represent either Siemens NX or Creo/ProE parts - When the format is inferred automatically, an unversioned
.prtfile is treated as NX - Creo can be selected explicitly, and versioned Creo filenames such as
.prt.1or.prt.23are recognized as Creo - Imported geometry does not include editable native feature history
Autodesk Inventor Part (.ipt)
- Accepted for importing Autodesk Inventor part geometry
- Imported geometry does not include editable Inventor feature history
Parasolid (.x_t, .x_b)
- Accepted for importing Parasolid text (
.x_t) and binary (.x_b) geometry - Imported geometry does not include editable feature history
3D Model Formats
glTF/GLB (.gltf, .glb)
- Graphics Library Transmission Format
- Modern 3D asset format optimized for web and real-time rendering
- Supports meshes, materials, textures, and complex scenes
- Commonly used for visualization assets and game engines
FBX (.fbx, .fbxb)
- Filmbox format
- Autodesk interchange format for 3D content
- Widely used in animation, VFX, and game development pipelines
- Supports complex scenes with multiple objects and materials
OBJ (.obj)
- Widely supported mesh interchange format
- Useful for visualization and compatibility with general-purpose 3D software
- Supports custom length units and coordinate systems when imported from KCL
PLY (.ply)
- Polygon File Format for mesh and scan data
- Commonly used for visualization, 3D scanning, and graphics workflows
- Supports custom length units and coordinate systems when imported from KCL
STL (.stl)
- Tessellated surface format commonly used for 3D printing
- Contains mesh geometry without parametric feature history
- Supports custom length units and coordinate systems when imported from KCL
Native Formats
KCL (.kcl)
- Zoo's native parametric modeling language
- Imports as a fully editable parametric model
- Enables code-based design reuse and library building
- Preserves feature history and parameter definitions
Imported Geometry Behavior
Non-Native Formats
Imported CAD geometry from external formats:
- Appears as reference geometry in the Scene
- Can be measured, visualized, and used as construction references
- Can be used as boolean tools (subtract imported geometry from KCL-created solids)
- Can serve as extrusion targets ("extrude to face" with imported surfaces)
- Geometry is not directly editable (no feature history)
- To edit parametrically, manually recreate using KCL/native tools
Native KCL Format
Imported KCL files:
- Fully parametric and editable
- Feature tree is preserved
- Parameters can be modified
- Code can be directly edited in Code Editor
- Functions and variables can be reused
Import Workflow Best Practices
File Organization
Organize imports in project file structure:
Version Control
When importing files into version-controlled projects:
- Commit imported files to repository (enables team collaboration)
- Use relative paths in import statements (ensures portability)
- Document import sources and versions in comments
Unit Handling
STEP files include unit metadata:
- Zoo interprets STEP numeric values in the current KCL file or scene unit; it does not rescale from STEP unit metadata
- Match the KCL file or scene unit to the source CAD file before importing
- If you need to keep a different scene unit, use a
Scaletransform after import
See STEP units and scale for an example and the conversion workflow.
Performance Considerations
Large imported files affect performance:
- STEP files with thousands of features may slow viewport interaction
- Consider simplifying complex imports for better responsiveness
- Use level-of-detail (LOD) representations when available
- Import only required components, not entire assemblies when possible
File Format Selection Guide
| Use Case | Recommended Format | Reason |
|---|---|---|
| CAD system interchange | STEP (.stp) | Industry standard, high fidelity |
| Parametric reuse | KCL (.kcl) | Native format, fully editable |
| Visualization reference | glTF/GLB (.glb) | Optimized for rendering, smaller file size |
| Animation pipeline | FBX (.fbxb) | Supports complex scenes and animations |
| Supplier-provided models | STEP (.stp) | Most common neutral format from vendors |
| Internal library components | KCL (.kcl) | Maintains parameter definitions and editability |