Quantcast
Channel: OpenPlant | AutoPLANT
Viewing all articles
Browse latest Browse all 12277

Forum Post: 通过图标生成槽钢时 出现'NoneType' object is not iterable错误

$
0
0
import clr from Bentley.ESM.Geometry import * import BESM from BESM import * import BasicShapes import SuppPlacement import Bentley.ESM.Placement from Bentley.ESM.Placement import * import Bentley.ESM.PythonSubCommand from Bentley.ESM.PythonSubCommand import * import Bentley.ESM.Utilities from Bentley.ESM.Utilities import * import Bentley.ESM.Briefcase from Bentley.ESM.Briefcase import * from Bentley.ESM.EngineeringTools import * from Bentley.ESM.Briefcase.Sync import * BESM.agr = aggregator ClearMessageBox() Message("Start CERI_A Script") def CreateCERI_ChannelSteelAModelObject(className,uom): modelObj = BESM.agr.CreateInstance(className) modelObj.AddTempProperty(BESM.agr.CreateTempProperty('H', {'UIcategory':'CERI', 'DisplayLabel':'length', 'DataType':'Double', 'Default':'100', 'UOMType': 'LENGTH', 'options':'', 'ordinal' : 1})) UILink.InstanceList.Add(modelObj) BESM.agr.CreateInstanceModelessUI() modelObj = UILink.InstanceList.ActiveInstance if modelObj == None: return modelObj.SetStringValue("Parameters", modelObj.SerializeParams("H")) UILink.InstanceList.Clear() return modelObj def CreatePartShape(modelObj,name): uom = "MM" partSpace = BESSpace(name) len = modelObj.GetRealValue("H", 0.0, uom) Message("len = %s %s" % (len,uom)) width = 53 depth = 126 webThk = 5.5 flgThk = 5.5 dy = 0 dz = 0 profC = BESExtrusion("profC", "PROFILE_C", "LEFT", uom, width, depth, webThk, flgThk, dy, dz, len) partSpace.AddBESPiece(profC) return partSpace def PlacePart(): name = "CERI_A" uom = "MM" SuppPlacement.SetVisuals("SupportClamp", "GENERIC") pipe,pipeOD = SuppPlacement.GetPipeParams("Select Pipe",uom) # if (pipe == None): # return modelObj = CreateCERI_ChannelSteelAModelObject("CERI_A","MM") if modelObj == None: Message("User canzelled placement") return Message("I placement ok") partSpace = CreatePartShape(modelObj,name) part = BESGroup(name) part.AddBESPiece(partSpace) part.ecObject = modelObj.ECInstance plcParams = PlacementData() wk = Bentley.ESM.PlaceSeq() if pipe != None : plcParams.YawLocked = False plcParams.PitchLocked = True plcParams.RollLocked = False wk.PushItem( pipe ) wk.AddPlacement( PyCmdPathPlc, plcParams) else: wk.AddPlacement( PyCmdFloatPlc, plcParams) compInfo = ProcessElement( part, wk) return PlacePart()

Viewing all articles
Browse latest Browse all 12277

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>