Scriptproblem with BReps and getNackedEdges

 From:  Karsten (KMRQUS)
7819.1 
Hello,

I try to join some adjacent faces and get the boundary edges/loop from the result. Unfortunately I can't find a solution to get the edges. Here is what I try to do:

function getloops()
{
var inputobjects = moi.geometryDatabase.createObjectList();
inputobjects = moi.geometryDatabase.getSelectedObjects();
var loops = moi.geometryDatabase.createObjectList();
var output = moi.geometryDatabase.createObjectList();
var joinedInput = moi.geometryDatabase.createObjectList();
var joinedFacesEdges = moi.geometryDatabase.createObjectList();
var joinedFacesLoops = moi.geometryDatabase.createObjectList();
var joinedBRep = moi.geometryDatabase.createObjectList();
// this.inputobjects = selectBylist(this.properties.selObjects);
// loops = this.inputobjects.getCurves();
// var facebundles = this.inputobjects.getFaces();
var facebundles = inputobjects.getSingleFaceBReps();

if (loops.length < 2)
{
var joinFac = moi.command.createFactory('join');
joinFac.setInput(0, facebundles);
joinedInput = joinFac.calculate();
joinFac.commit();
// joinFac.cancel();

joinedBRep = joinedInput.getOpenBReps();
// joinedBRep = joinedInput.getTopLevelObjects();

// this.outputs[0].label = this.inputobjects.item(0).GeomObjectEnum;
for (var i = 0; i < joinedInput.length; i++)
{
joinedFacesEdges = joinedBRep.item(i).getNackedEdges(); // getOpenBReps getSubObjects().getBReps()..getNackedEdges()
// joinedFacesEdges = joinedInput.getTopLevelObjects().getNackedEdges(); // getOpenBReps getSubObjects().getBReps()..getNackedEdges()
// this.outputs[0].label = this.inputobjects.item(i).GeomObjectEnum;
}
var joinFac = moi.command.createFactory('join');
joinFac.setInput(0, joinedFacesEdges);
joinedFacesLoops = joinFac.calculate();
joinFac.commit();
for (var i = 0; i < joinedInput.length; i++)
{
loops.addObject(joinedFacesLoops.item(i));
}
}
//////////////////////testloft
var truncatedFac = moi.command.createFactory('loft');
truncatedFac.setInput(0, loops);
truncatedFac.setInput(2, 'Straight');
truncatedFac.setInput(3, false);
truncatedFac.setInput(4, false);
output = truncatedFac.calculate();
truncatedFac.commit();
// this.setOutputData(0, joinedFacesEdges);
//////////////////// end testloft
}
getloops();

Thanks in advance!

Have a nice day
Karsten
Attachments: