2 votos

¿Cómo crear una nueva capa dentro de un archivo DXF?

Usando OGR en Python, me gustaría crear algunas geometrías dentro de un archivo DXF, pero no en la capa "0", sino en otras nuevas.

Lo intenté con:

import ogr, os, osr, sys
ds = ogr.GetDriverByName('DXF').CreateDataSource('output.dxf' )
myLayer = ds.CreateLayer('entities')
newFeature = ogr.Feature(feature_def = myLayer.GetLayerDefn())
newFeature.SetGeometryDirectly(ogr.CreateGeometryFromWkt( 'LINESTRING(0 0, 100 100)'))
myLayer.CreateFeature( newFeature )
newFeature.Destroy()
ds.Destroy()
ds = None

Pero no tengo ni idea de cómo continuar y crear nuevas capas.

He probado también con

layers = ds.ExecuteSQL("INSERT INTO entities (Layer) VALUES ('Layer1')")

pero no funciona.

  • ¿Alguna sugerencia?
  • ¿Merece la pena utilizar otra biblioteca DXF+Python?

Muchas gracias.

1voto

talonx Puntos 262

'layer' es un campo de atributo. Añade:

newFeature.SetField( myLayer.GetLayerDefn().GetFieldIndex("layer"), 'newlayer')

Y la función aparecerá en la capa nueva capa .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X