Compter le nombre d'entités de type différentes dans un dessin dxf
Quand on reçoit des données graphiques sous forme d'un simple fichier DXF, il se peut que l'on soit confronter au fait de vérifier le type d'entités différentes se trouvant dans ce fichier.
l'utilitaire ogrinfo de la suite d'outil gdal est bien pratique et il permet de résoudre ce petit problème en une seule ligne de commande sous n'importe quel shell tel que bash avec votre distribution Gnu/Linux favorite. Ceci permet de filtrer tout de suite un fichier d'un lot qui contiendrait des types d'entités que l'on ne veut pas traiter.
ogrinfo -geom=SUMMARY -al 085_VOL2008.dxf |grep AcDbEntity|sort |uniq -c
l'utilitaire ogrinfo de la suite d'outil gdal est bien pratique et il permet de résoudre ce petit problème en une seule ligne de commande sous n'importe quel shell tel que bash avec votre distribution Gnu/Linux favorite. Ceci permet de filtrer tout de suite un fichier d'un lot qui contiendrait des types d'entités que l'on ne veut pas traiter.
ogrinfo -geom=SUMMARY -al 085_VOL2008.dxf |grep AcDbEntity|sort |uniq -c
332 SubClasses (String) = AcDbEntity:AcDb3dPolyline
580 SubClasses (String) = AcDbEntity:AcDbBlockReference
405 SubClasses (String) = AcDbEntity:AcDbCircle
64 SubClasses (String) = AcDbEntity:AcDbCircle:AcDbArc
50 SubClasses (String) = AcDbEntity:AcDbLine
201 SubClasses (String) = AcDbEntity:AcDbMText
1036 SubClasses (String) = AcDbEntity:AcDbPolyline
9 SubClasses (String) = AcDbEntity:AcDbText:AcDbText
Il est intéressant de noter que ogrinfo suporte un sous-ensemble du langage SQL ce qui permet d'écrire :
ogrinfo -sql 'SELECT DISTINCT Layer FROM entities ORDER BY Layer ' -fields=YES -geom=NO -al -q 085_VOL2008.dxf |grep Layer
ce qui aura pour effet de lister les différentes couches du dessin dxf
ogrinfo -sql 'SELECT DISTINCT Layer FROM entities ORDER BY Layer ' -fields=YES -geom=NO -al -q 085_VOL2008.dxf |grep Layer
ce qui aura pour effet de lister les différentes couches du dessin dxf
Commentaires