Part TopoShape
Introduzione
Una Part TopoShape, o formalmente una Part::TopoShape
, è una classe che definisce una "forma topologica" parametrica nel software. Gli oggetti del documento che mostrano qualcosa nella vista 3D normalmente hanno una TopoShape.
Le forme topologiche, così come i loro metodi, sono definiti dal kernel OpenCASCADE Technology (OCCT). FreeCAD usa queste forme e crea dei App DocumentObjects attorno ad esse.
Diagramma semplificato delle relazioni tra gli oggetti principali del programma. La classe Part::TopoShape
è incorporata nell'oggetto Part::Feature
e da lì viene propagata a tutti gli oggetti che ne derivano.
Utilizzo
TopoShape è un oggetto assegnato ad alcuni App DocumentObjects.
In particolare, l'oggetto base che gestisce questi tipi di forme è la Part Feature (classe Part::Feature
). Tutti gli oggetti derivati da questa classe avranno accesso a una Part TopoShape.
Alcuni degli oggetti più importanti con Part TopoShape sono i seguenti:
- Qualsiasi solido primitivo creato con Part.
- Qualsiasi Corpo di PartDesign e PartDesign Feature creati con PartDesign.
- Qualsiasi oggetto derivato da Part Part2DObject, come la maggior parte degli oggetti creati con Draft.
- Qualsiasi schizzo, cioè, Sketcher SketchObject, creato con Sketcher.
- Qualsiasi oggetto creato importando uno STEP, BREP e file simili in formato solido.
Script
Vedere anche: Script di base per FreeCAD, e script di oggetti.
Tutti gli oggetti derivati da Part::Feature
avranno un Part TopoShape, che è normalmente accessibile dal suo attributo Shape
.
import FreeCAD as App
doc = App.newDocument()
obj = App.ActiveDocument.addObject("Part::Box", "Box")
print(obj.Shape)
Un TopoShape ha molti attributi (variabili) e metodi che contengono informazioni su di esso e che consentono di eseguire operazioni con esso. Queste variabili e metodi possono essere testati nella console Python.
print(obj.Shape.Area)
print(obj.Shape.BoundBox)
print(obj.Shape.CenterOfMass)
print(obj.Shape.ShapeType)
obj.Shape.check()
obj.Shape.copy()
obj.Shape.exportStep("my_file.step")
obj.Shape.exportStl("my_file.stl")
For a full list of attributes and methods, consult the source documentation, and the Std PythonHelp tool.
- Primitives: Box, Cylinder, Sphere, Cone, Torus, Tube, Create primitives, Shape builder
- Creation and modification: Extrude, Revolve, Mirror, Fillet, Chamfer, Make face from wires, Ruled Surface, Loft, Sweep, Section, Cross sections, 3D Offset, 2D Offset, Thickness, Projection on surface, Attachment
- Boolean: Make compound, Explode Compound, Compound Filter, Boolean, Cut, Fuse, Common, Connect, Embed, Cutout, Boolean fragments, Slice apart, Slice, XOR
- Measure: Measure Linear, Measure Angular, Measure Refresh, Clear All, Toggle All, Toggle 3D, Toggle Delta
- Cuore: App DocumentObject
- Base: App FeaturePython, App GeoFeature, Part Feature, Mesh Feature, Fem FemMeshObject
- Forme interne: Part TopoShape, Mesh MeshObject, Fem FemMesh
- Struttura: App DocumentObjectGroup (Std Group), App Part (Std Part), App Link
- Derivate: Part Part2DObject, Sketcher SketchObject, PartDesign Body, PartDesign Feature
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub