2016-10-18 2 views
1

Wenn ich eine bestimmte dxf-Datei in LibreCAD öffnen, sagt die Befehlszeile im Dialogfeld in LibreCAD:Wie zu entfernen/suchen ungültiges Objekt in meiner DXF-Datei?

Invalid objects removed : 1 

ich dieses ungültige Objekt in meiner dxf-Datei erkannt werden soll und entfernen. Wann wird ein Objekt ungültig? Was bedeutet ein ungültiges Objekt?

+0

Ich würde für Null-Zeilen oder Null-Winkel-Bögen, so etwas ... – abenci

Antwort

1

Da ich keine Antwort erhalten haben overe hier, habe ich beschlossen, in die LibreCAD Quellcode zu graben und fand diese in rs_graphic.cpp:

/** 
* Removes invalid objects. 
* @return how many objects were removed 
*/ 
int RS_Graphic::clean() 
{ 
    // author: ravas 

    int how_many = 0; 

    foreach (RS_Entity* e, entities) 
    { 
     if (e->getMin().x > e->getMax().x 
      || e->getMin().y > e->getMax().y 
      || e->getMin().x > RS_MAXDOUBLE 
      || e->getMax().x > RS_MAXDOUBLE 
      || e->getMin().x < RS_MINDOUBLE 
      || e->getMax().x < RS_MINDOUBLE 
      || e->getMin().y > RS_MAXDOUBLE 
      || e->getMax().y > RS_MAXDOUBLE 
      || e->getMin().y < RS_MINDOUBLE 
      || e->getMax().y < RS_MINDOUBLE) 
     { 
      removeEntity(e); 
      how_many += 1; 
     } 
    } 

Der obige Code ist selbsterklärend und ich hoffe, Das hilft jedem, der sich in Zukunft dieselbe Frage stellt.

Verwandte Themen