CATIA V5です。
ちょっと勘違いしたのですが、作ってしまったので
残しておく事にします。
アクティブなPartからDrawを作るだけです。
'vba using-'KCL0.12' Option Explicit Sub CATMain() 'ドキュメントのチェック If Not KCL.CanExecute("PartDocument") Then Exit Sub End If Dim partDoc As PartDocument Set partDoc = CATIA.ActiveDocument Dim drawDoc As DrawingDocument Set drawDoc = initDrawDoc Call initFrontView(drawDoc, partDoc) End Sub Private Function initFrontView( _ ByVal doc As DrawingDocument, _ ByVal targetPartDoc As PartDocument) _ As DrawingView Dim sheet As DrawingSheet Set sheet = doc.Sheets.Item(1) Dim views As DrawingViews Set views = sheet.views Dim frontView As DrawingView Set frontView = views.Add("AutomaticNaming") Dim viewBehavior As DrawingViewGenerativeBehavior Set viewBehavior = frontView.GenerativeBehavior Dim prod As Product Set prod = targetPartDoc.Product viewBehavior.Document = prod viewBehavior.DefineFrontView 1#, 0#, 0#, 0#, 1#, 0# viewBehavior.Update Set initFrontView = frontView End Function Private Function initDrawDoc() _ As DrawingDocument Dim docs As Documents Set docs = CATIA.Documents Dim drawDoc As DrawingDocument Set drawDoc = docs.Add("Drawing") Set initDrawDoc = drawDoc End Function
左をアクティブにしておき、マクロを実行すると右を勝手に
作ります。
マクロの記録し、ちょっと整えただけです・・・。
本当はここから先を勝負しようと思っていたのですが、
上手く行きそうになかったので、諦めました。