def getGeometryOutputByNegativesPositives(elementNode, negatives, positives):
 positiveOutput = triangle_mesh.getUnifiedOutput(positives)
 if (len(negatives) < 1):
  return solid.getGeometryOutputByManipulation(elementNode, positiveOutput)
 if (len(positives) < 1):
  negativeOutput = triangle_mesh.getUnifiedOutput(negatives)
  return solid.getGeometryOutputByManipulation(elementNode, negativeOutput)
 return solid.getGeometryOutputByManipulation(elementNode, {'difference': {'shapes': ([positiveOutput] + negatives)}})

def getGeometryOutputByNegativesPositives ( elementNode , negatives , positives ) : positiveOutput = triangle_mesh . getUnifiedOutput ( positives ) if ( len ( negatives ) < 1 ) : return solid . getGeometryOutputByManipulation ( elementNode , positiveOutput ) if ( len ( positives ) < 1 ) : negativeOutput = triangle_mesh . getUnifiedOutput ( negatives ) return solid . getGeometryOutputByManipulation ( elementNode , negativeOutput ) return solid . getGeometryOutputByManipulation ( elementNode , { 'difference' : { 'shapes' : ( [ positiveOutput ] + negatives ) } } )
get triangle mesh from elementnode .