Points : Attribue un point à chaque objet d'une sélection! by Michael Gibson
Attribue un point au centre de chaque objet d'une boîte englobante d'une sélection multiple!
Cette boîte englobante peut être créé en pressant la touche Tab et écrire Boundingbox
Cette boîte englobante peut être créé en pressant la touche Tab et écrire Boundingbox
p
|
script: /* Attribue un point à chaque objet d'une boîte englobante*/ var objs = moi.geometryDatabase.getSelectedObjects(); for ( var i = 0; i < objs.length; ++i ) { var obj = objs.item(i); var pt = obj.getBoundingBox().center; var ptfactory = moi.command.createFactory( 'point' ); ptfactory.setInput( 0, pt ); ptfactory.commit(); }
|
Une curiosité : correspond à la projection du prochain Point des Lignes d'Aide à mais en une touche!
Met des points géométriques à chaque segments d'une Polyligne (mais pas le premier! )
script:/* Create point at polyline ends */ var objs = moi.geometryDatabase.getSelectedObjects(); for ( var i = 0; i < objs.length; ++i ) { var obj = objs.item(i); if ( obj.isCurve ) { var all_lines = true; var segs = obj.getSubObjects(); for ( var j = 0; j < segs.length; ++j ) { if ( !segs.item(j).isLine ) { all_lines = false; break; } } if ( all_lines ) { for ( var j = 0; j < segs.length; ++j ) { var line = segs.item(j); var f = moi.command.createFactory('point'); f.setInput( 0, line.getEndPt() ); f.commit(); } } } }
Met des points géométriques à chaque segments d'une Polyligne ( premier & dernier! )
script:/* Create point at polyline start & ends */ var objs = moi.geometryDatabase.getSelectedObjects(); for ( var i = 0; i < objs.length; ++i ) { var obj = objs.item(i); if ( obj.isCurve ) { var all_lines = true; var segs = obj.getSubObjects(); for ( var j = 0; j < segs.length; ++j ) { if ( !segs.item(j).isLine ) { all_lines = false; break; } } if ( all_lines ) { for ( var j = 0; j < segs.length; ++j ) { var line = segs.item(j); var f = moi.command.createFactory('point'); f.setInput( 0, line.getEndPt() ); f.commit(); if ( j == 0 &&!segs.item(j).isClosed ) { var f2 = moi.command.createFactory('point'); f2.setInput( 0, line.getStartPt() ); f2.commit(); } } } } }