예제 #1
0
    def operate(self,design):
        operationgeom = design.sketches[self.sketchid].output_csg()
        layers = [design.return_layer_definition().getlayer(item) for item in self.layer_links]        

        try:
            laminate1 = design.op_from_ref(self.operation_link1).output[self.getoutputref()].csg
        except NoOperation:
            laminate1 = Laminate(design.return_layer_definition())
        
        laminate2 = Laminate(design.return_layer_definition())
        for layer in layers:
            laminate2.replacelayergeoms(layer,operationgeom)

        lsout = laminate1.binaryoperation(laminate2,self.function)
        return lsout