Draft OCA

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Draft OCA and the translation is 6% complete.
Outdated translations are marked like this.
Other languages:
English • ‎español • ‎français • ‎italiano • ‎svenska • ‎čeština • ‎русский

Draft OCA

Menu location
Default shortcut
Introduced in version
See also


Draft OCA is a software module used by the Std Open.svg Std Open, Std Import and Std Export commands to handle the OCA file format.

The OCA file format is community effort to create a free, simple and open CAD file format. OCA is largely based on the GCAD file format generated from gCAD3D. Both formats can be imported in FreeCAD, and the OCA files exported by FreeCAD can be opened in gCAD3D.


Esta función importa archivos OCA/GCAD. El formato de archivo OCA es un esfuerzo de la comunidad de crear un formato de archivo de abierto, simple y libre. OCA está basado en el formato de archivo GCAD generado por gCAD3D. Ambos formatos se pueden importan en FreeCAD, y los archivos OCA exportados por FreeCAD se pueden abrir en gCAD3D.

De momento se importan los siguientes objetos de OCA:

  • Líneas
  • Arcos y Circunferencias
  • Áreas cerradas


Los objetos que se pueden exportar de momento son:

  • Líneas y wires (polilíneas)
  • Arcos y circunferecias
  • Caras

The following FreeCAD objects can be exported:

  • Lines and wires (polylines)
  • Arcs and circles
  • Faces


Los siguientes parámetros se pueden especificar en la pestaña de Preferencias (menú Editar -> Preferencias -> Croquis):

  • Importar áreas cerradas o no

For more information see: Import Export Preferences.


See also: Draft API and FreeCAD Scripting Basics.

You can export elements to OCA by using the following function:

importOCA.export(exportList, filename)


import FreeCAD, Draft, importOCA

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(1000, 1000, 0)
p3 = FreeCAD.Vector(2200, 1500, 0)
p4 = FreeCAD.Vector(2500, -100, 0)

obj1 = Draft.makeWire([p1, p2, p3, p4])
obj2 = Draft.makeWire([p1, -2.3*p2, -0.8*p3, -1.8*p4])

objects = [obj1, obj2]

importOCA.export(objects, "/home/user/Pictures/myfile.oca")