At least with CloudCompare your task seems possible.
Code: Select all
import Points # your point set Points.insert("yourpath/aaa.asc",'pointcloudtest') pts=App.ActiveDocument.ActiveObject pts.ViewObject.hide() # the exact model App.ActiveDocument.addObject("Part::Box","Box") mymodel=App.ActiveDocument.ActiveObject mymodel.ViewObject.Transparency=80 App.ActiveDocument.ActiveObject.ViewObject.ShapeColor=(1.0,1.0,0.0) App.ActiveDocument.recompute() ptin= ptoff= for p in pts.Points.Points: if mymodel.Shape.isInside(p,0.1,True): ptin.append(p) else: ptoff.append(p) # the good points pin=Points.Points(ptin) Points.show(pin) App.ActiveDocument.ActiveObject.ViewObject.ShapeColor=(0.0,1.0,0.0) # the bad points pout=Points.Points(ptoff) Points.show(pout) App.ActiveDocument.ActiveObject.ViewObject.ShapeColor=(1.0,.0,0.0) Gui.SendMsgToActiveView("ViewFit")
Yes of course. FreeCAD is very powerful and if you are able to combine the methods for your needs you can automate lots of your work.Adam Jelínek wrote:
As I understand it - if I will learn Python, I will be able to do such as modifications to FreeCAD, right?