2014-01-09 14:20:44 +00:00
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
|
|
|
|
import logging
|
2017-03-20 13:27:30 +01:00
|
|
|
from .geomsmesh import geompy
|
2014-01-09 14:20:44 +00:00
|
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
# --- substract a list of subShapes from another
|
|
|
|
|
|
|
|
def substractSubShapes(obj, subs, toRemove):
|
|
|
|
"""
|
|
|
|
liste de subshapes par difference
|
|
|
|
"""
|
|
|
|
logging.info("start")
|
|
|
|
idToremove = {}
|
|
|
|
subList = []
|
|
|
|
for s in toRemove:
|
|
|
|
idToremove[geompy.GetSubShapeID(obj, s)] = s
|
|
|
|
for s in subs:
|
|
|
|
idsub = geompy.GetSubShapeID(obj, s)
|
2017-03-20 13:27:30 +01:00
|
|
|
if idsub not in list(idToremove.keys()):
|
2014-01-09 14:20:44 +00:00
|
|
|
subList.append(s)
|
|
|
|
logging.debug("subList=%s", subList)
|
|
|
|
return subList
|