аЯрЁБс>ўџ ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot EntryџџџџџџџџPх픈СРapcџџџџџџџџm˜“€СPх픈СThe VBA Project џџџџџџџџm˜“€СPх픈С_VBA_Projectџџџџџџџџ m˜“€СPх픈С§џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџўџџџAўџџџ !"$%&'()*+,-./0123456789:;<=>?@ўџџџBўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ ѓ™“€Сapcџџџџџџџџm˜“€С ѓ™“€СThe VBA Project џџџџџџџџm˜“€С ѓ™“€С_VBA_Projectџџџџџџџџ m˜“€С ѓ™“€Сџџџџџџџџ§џџџўџџџ ўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџHost Project Item Names0џџџџџџџџ m˜“€С ѓ™“€СVBA Project Data"џџџџ„Host Project Items&џџџџџџџџџџџџ4VBA Project Signature,џџџџ ўџџџўџџџўџџџ ўџџџўџџџўџџџўџџџўџџџўџџџ !"#$%&'()*+,-./01234ўџџџ6789:;<=>?@ABCDўџџџўџџџўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџЭє{€stdole f%\*\G{00020430v-C 0046}#2.0#0#C:\WINNT\Syst em32\c2.tlb#OLE Automati,on^‚s‚‚ѕ € ThisLibr@aryG€hisL€ bra€y* 2# H‚1‚‹%‚ ,‚@”|"‚+‚‚ReqControl List Data*џџџџџџџџџџџџG Control_Data_CurVer(џџџџџџџџF Control List Data$џџџџџџџџџџџџE(џџџџџџџџџџџџЬamџ фњ*\G{000204EF-0000-0000-C000-000000000046}#4.0#9#C:\PROGRA~1\GEMEIN~1\MICROS~1\VBA\VBA6\VBE6.DLL#Visual Basic For Applicationsц*\G{801A0000-A66C-11D3-A8BD-0000861EBBD6}#1.0#0#E:\programme\sw2001\swvba.tlb#SolidWorks Extensibility Type LibraryИ*\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\WINNT\System32\stdole2.tlb#OLE Automation џџџџџџџџВ9Y=џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџѕThisLibrary063d5939b2џџThisLibraryџџ”|%џџџџџџ џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџТшnСhЪFЏ‚6ƒldš`џџџџџџџџ`€  џŒ% SolidWorks;VBAїтWin16С~Win32MacГВVBA6­#Projekt1вAstdole“` VBAProject3ЌK mittelkreuzeŽ& ThisLibraryGЉ €џџџ_Evaluateйџџ<џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ №ФдџџџџЫѕ”|џџ#ˆЖџџџџџџџџџџџџџџџџџџџџџџџџxџџMEџџџџџџџџџџпџџ џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ(SLџџџџSџџџџS”џџџџ<џџџџџџN0{801A2004-A66C-11D3-A8BD-0000861EBBD6}џџџџ8€ўџџџџџџџ(џџџџџџџџџџ%џџџџHџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџпўЪџџџџџџџџxџџџџЛАAttribute VB_Name = "ThisLibraryˆ" ˆBasˆ0{801A2004-A66C-11D3-A8BD-0861E BBD6} |GlobalЮSpa‚c’False dCreatablPredeclaIdАTru BExposeTemplate`Deriv’BuРstomizD2вмц№ШbHost Project Item Names0џџџџ m˜“€СPх픈СVBA Project Data"џџџџњHost Project Items&џџџџџџџџ4VBA Project Signature,џџџџџџџџџџџџ ўџџџўџџџH ўџџџўџџџўџџџўџџџ !"#$%&'()*+,-./0123456789:;<=>?@ABCDўџџџFGKўџџџўџџџўџџџLMNOPQRSTUVWўџџџўџџџўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџЭє{PNa ThisLibrary*{Oa 5{АOa L{801A2004-A66C-11D3-A8BD-0000861EBBD6}7{pAa L{801A0000-A66C-11D3-A8BD-0000861EBBD6}9{ Ba ";{АCa $={Fa &šЄ&ЎL{801A0000-A66C-11D3-A8BD-0000861EBBD6}И8Тplkreuze\mittelkreuze.swpЬ LDћ6@,џџMEџџџџџџџџџџпџџ џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ(SLџџџџSџџџџS”џџџџ<џџџџџџN0{801A2004-A66C-11D3-A8BD-0000861EBBD6}D:\daten\solidworks\macros\mitteID="{C5D2CF0E-1EFC-4FE9-9D17-F87C11C56811}" Document=ThisLibrary/&H00000000 Module=mittelkreuze1 Name="mittelkreuze" HelpContextID="0" VersionCompatible32="393222000" CMG="292B3F4543454345434543" DPB="939185CDEECEEECEEE" GC="FDFFEB7F3FE840E84017" [Host Extender Info] &H00000001={3832D640-CF90-11CF-8E43-00A0C911005A};VBE;&H00000000 [Workspace] ThisLibrary=0, 0, 0, 0, C mittelkreuze1=44, 44, 650, 529, Z ThisLibraryџџџџџџџџm˜“€СPх픈СProject_Data_CurVer( џџџџJ Host Project Item List Data8џџџџџџџџџџџџIVBAџџџџџџџџm˜“€Сm˜“€СPROJECTwmџџџџџџџџџџџџPPROJECT џџџџ Ї_VBA_PROJECTџџџџџџџџџџџџг ThisLibraryџџџџEфThisLibraryThisLibrarymittelkreuze1mittelkreuze1JsБ€0* pH‚dф mittelkr euze<Њ@ = v В9YD=Ž<Vrstdole>stdole f%\*\G{00020430v-C 0046}#2.0#0#C:\WINNT\Syst em32\c2.tlb#OLE Automati,on^‚s‚‚ѕ € ThisLibr@aryG€hisL€ bra€y* 2# H‚1‚‹%‚ ,‚@”|"•‚+‚€…‰О\ReqControl List Data*џџџџџџџџџџџџZ Control_Data_CurVer(џџџџџџџџY Control List Data$џџџџџџџџџџџџX(mittelkreuze1џџџџџџџџ#:dirџџџџџџџџџџџџwProject Item Data$џџџџ Control List Data$џџџџџџџџPх픈СPх픈СReqControl List Data*џџџџџџџџPх픈СPх픈С1G€: €Ct™e˜k€EeuzЕ1€  2‰O&Љ(O&ќJ!Т$C&ТEF-0Ьamџ фњ*\G{000204EF-0000-0000-C000-000000000046}#4.0#9#C:\PROGRA~1\GEMEIN~1\MICROS~1\VBA\VBA6\VBE6.DLL#Visual Basic For Applicationsц*\G{801A0000-A66C-11D3-A8BD-0000861EBBD6}#1.0#0#E:\programme\sw2001\swvba.tlb#SolidWorks Extensibility Type LibraryИ*\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\WINNT\System32\stdole2.tlb#OLE Automation џџџџџџџџВ9Y=џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџѕThisLibrary063d5939b2џџThisLibraryџџ”|%џџmittelkreuze1073d5939b2џџmittelkreuze1џџќJ Љ(џџџџџџ@џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџТшnСhЪFЏ‚6ƒldš`џџџџџџџџ`Ž `ьЄUKМ=y$[\џџџџџџџџ€?@џИ- SolidWorks;VBAїтWin16С~Win32MacГВVBA6­#Projekt1вAstdole“` VBAProject3ЌK mittelkreuzeŽ& ThisLibraryGЉ €џџџ_EvaluateйModul1Э mittelkreuze1ѓswAppы‘ DrawingDocс SelectionMgr0MathUtilsђFaceObjФOViewаIEdgeObj ” EdgeCountžЛEdgeListšК EdgeParamsм?Curve1  CurveType6Location-рdLoc"uvLoc:[oLocЉѓ oLocXformedЖŒ vLocXformedнъ ViewXform)T oViewXformј$RadiusрVvSelPtЩ SelectedObjoi`retvalЭ; CIRCLE_TYPEџ;mainˆ, CreateObjectјŠ ActiveDocк’GetMathUtilityц* ErrorTrapQ•SelectionManagerХѓGetSelectedObject3Э/GetSelectionPointн= SelectByID‘a GetViewXformрМCreateTransform ' GetEdgeCount$GetEdgesврGetCurvelIdentityЯ CircleParamsЧm CreatePointНMultiplyTransformnЦ ArrayData_ё AddCenterMarkеКClearSelectionЛH WindowRedrawMsgBox—R vbCritical+}џџHџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ $’BuРstomizD2№ФдџџџџЫѕ”|џџ#ˆЖџџџџџџџџџџџџџџџџџџџџџџџџx№,дˆџџџџ3Ѓ(ѕќJџџЖџџџџџџџџџџџџџџџџџџџџџџџџxџџMEџџџџџџџџџџпџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ`„џџџџџџџџ џџ`„џџџџџџџџ џџ`„ џџџџџџџџ џџ`„"џџџџџџџџ џџ`„$џџџџџџџџ џџd`„&џџџџџџџџ џџhlte`„(џџџџџџџџ џџ`„*џџџџџџџџџџcht `„,џџџџџџџџ џџitte`„.џџџџџџџџ џџd de`„0џџџџџџџџ џџј`„2џџџџџџџџџџt vo „4џџџџџџџџP.tri8 „6џџџџџџџџˆch kp`„8џџџџџџџџ џџche `„:џџџџџџџџ џџcht `„<џџџџџџџџ џџ(`„>џџџџџџџџ џџen, `„@џџџџџџџџ џџј`„Bџџџџџџџџ џџ '`„Dџџџџџџџџџџiew `„Fџџџџџџџџ џџelbs`„Hџџџџџџџџ џџ `„Jџџџџџџџџџџiew `„Lџџџџџџџџ џџzten`”NџџџџџџџџBџџen, Pџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџz„№ џџџџшџџАџџџџџџџџџџџџџџџџџџџџАџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџп;ўЪЕ€€ џџџџ€ N€ JX€ JЈ€ Jј€ 2H€ €€ Hˆ€ Lа€ J € &p€ ˜€ F € "ш€ € 0€ 28€ p€ N€ џџџџ€ р€€€€€ џџџџ€ €(€0€8€@€H€P€X€ џџџџ€ L`€ @А€№€€€€ €(€0€8€@€H€P€ џџџџ€ *X€ˆ€€ џџџџ€ L˜€ Hш€ (0€ X€ џџџџ"h€ @p$Аиш€ џџџџ€ Fј€ H@€ 6ˆ€ BР€ "0€ џџџџ€ B8€€ џџџџ€ 0Р€ Jи€ L( € Fx € Р и @№ 0 € џџџџ€ HH € H € Dи € L € @p  А Р а € џџџџ€ >ш € >( € (h     € џџџџ€ ,А р € џџџџ€ 0 0 € (@ h € (x   € 6А  ш € Dј € F@€ Hˆ€ Fа€ F€ `€ H€€ FШ€ H€ X€ 6p Ј€ HИ   0€ .H x€ Dˆ а€ >и€ € F8 €€ H˜€ Fр (€ B@€ Dˆ€ @а€  0€ џџџџ€ J@€ J€ Jр€ :0 Zp€ Bа€ F€ :`  € HР€ D€ P€ FpИ Р€ џџџџ€ Hа€ @ X h€ џџџџ€ BxР€ џџџџ€ џџџџ€Ш€ Lа€ N € Np€ FР€ v ˜€ џџџџ€ џџџџ€ џџџџ€ џџџџџџџџЈЭџџxрG **********************************************************************рC * Makro erzeugt fќr alle Kreise einer ausgewфhlten Flфche in einerрC * Zeichenansicht die dazugehіrenden Mittelkreuze. Die Idee und derџџрD * grіпte Teil des Codes stammt von Kevin Silbert (www.trimech.com), und iр, * hier erweitert und in deutsch kommentiertфche iр *рA * Bitte erst eine Flфche in einer Zeichenansicht wфhlen und dannрF * das Makro starten. Es kann bei zu dicht liegenden Kanten passieren,net рD * dass einzelne Bohrungen nicht korrekt gekennzeichnet werden. Nochrlitz р * gibt es kein Mittel dagegen. hр *р? * 07.12.2001 Stefan Berlitz (stefan.berlitz@solidworks.cad.de)geр * http://solidworks.cad.de.trimeр * http://swtools.cad.de**р *р, * Idee und Codegrundlagen von Kevin Silbertine Obр * http://www.trimech.comрG **********************************************************************Obр allgemeine Objekteject D]ђ]ђ]ђ0]ђH]ђ`]ђx]ђ]ђЈ]ђР]ђи]ђ№]ђрE fќr die mathematischen Transformationen und Umwandlungen von Feldernioneр: in Variants und umgekehrt brauchen wir ein paar Variablen]ЮЌђ ar]ЮЌђX L]ђ]ђЈ]ђР]ђи]ђ№]ђ]ђ ]ђ8]ђPр$ und noch ein paar StandardvariablenocXfor]ђh]ђ€рE zum Schluп die Konstantendefinitionen aus der swconst.bas (nur damitelPtрB der Download nicht zu groп wird, man kann logischerweise auch dasр! Modul mit ins Projekt aufnehmen)]ЌК ђ˜uп d–Ар9 wie gehabt erst mal an das laufende SolidWorks anklinkenэЖSldWorks.Application$R.erweэ !T. Mэ !V."roр@ damit wir nicht jedes bischen Fehler abfangen mќssen machen wirwiрA es uns einfach und verzweigen einfach bei jedem Fehler zum Ende,р0 wo eine kurze Erklфrung kommt was man tun soll. =р< DAS MUSS ZUM TESTEN AUSKOMMENTIERT WERDEN, DAMIT MAN SIEHT,) јр WO FEHLER AUSGELжST WERDENr uns ЩXШр; um an die Selektierungen zu kommen an den SelMgr anklinkenmformaэ !Z. ubр* dann holen wir uns die ausgewфhlte FlфcheэЌ %\.$it dрC und den passenden View dazu holen wir uns selbst. Dazu selektierenugen. рF wir einfach eine View an den zuletzt benutzten Selektionskoordinaten,) р@ dass muss ja der Klick des Benutzers gewesen sein um die Flфche mр auszuwфhlen.unseЌ %^'FtransfЖЖ DRAWINGVIEWЌ$FЌ$FЌ$F %`'LэЌ %\.&n рA dann holen wir uns die Transformationsmatrix der Zeichenansicht.рB Da GetViewXForm ein Feld von 13 Double zurќckliefert, wir fќr dieр> Transformationsberechnung das Standardmatrizenformat (Objekt) рF brauchen wird erst das Feld erweitert (auf behalten der Werte achten) 'р: und dann in eine gќltige Transformationsmatrix ќberfќhrt. &!b'@ ЮЌс@@э @ "%d.Bonр7 Dann kіnnen wir uns der eigentlichen Aufgabe zuwenden.r р7 Wir holen uns die Anzahl und die Objektzeiger auf alleu р" Kanten in der ausgewфhlten Flфche $!f'* Rad $%h',n р% dann untersuchen wir alle die Kantenvorhџ JўЌ *Ќ ’ р) dazu jeweils die nфchste Kante holen ...э J$,.(р! ... die dazu gehіrende Kurve ...э (!j.0m(р! ... und den Type des Kurvenzuges 0%l'2 _р0 wenn es sich beim Typ um einen Kreistyp handelt 2 NœAFFTр > die ganzen folgenden Aktionen sind nur aus einem Grund nіtig: Mitр ? um mit AddCenterMark ein Mittelkreuz zu machen muss VORHER diedoр A Kurve selektiert werden. Leider gibt es bisher keine Mіglichkeitр ? die Kurve zu selektieren, auch wenn man das Objekt hat, da einheр @ Entitie.Select die Kurve des Modells (!) auswфhlt, nicht die inAPр  der Zeichenansicht.TRUE (р B Aus diesem Grund muss man relativ umstфndlich (und mіglicherweiseр @ auch fehlerbehaftet) virtuell genau auf den Kreis klicken; dazuр A mќssen wir aber genau die Koordinaten haben, und dafќr jetzt derр ganze Wahn!р 0 Also los geht's: erst die Werte des Kreises ... 0!n'.р B ... die Koordinaten des Mittelpunktes in eine Feld aus Double ...Ќ$.Ќ+6Ќ$.Ќ+6Ќ$.Ќ+6р ( und den Radius merken wir uns auch nochЌ$.'Dр > ... dann das "Umformatieren" des Double-Feldes in ein Variant 6'8р 8 und mit diesen Koordinaten einen "mathematischen Punkt"р  (Objekt) erzeugen.р @ Achtung auf die Doppelklammern (мbergabe Safearray aus Variant)э 8 "%p.:р A Diesen math. Punkt jetzt in unsere Zeichenansicht transformierenр ? dazu diesen mit der Transformmatrix verktoriell multiplizierenэ B :%r.<р ; ... und diese Werte holen wir uns wieder in ein "normales"р = Double-Feld (ќber die Variant-мbergabe). Jetzt haben wir dieр : Koordinaten des Mittelpunkts der aktuellen Kante in Bezugр  auf die Zeichenansicht <!t'>р C nun ist die Selektion nur noch ein kleiner Schritt. Dazu "klicken"р D wir virtuell auf den Punkt genau auf 3 Uhr auf dem Kreisbogen. Dazuр D in X-Richtung zum Mittelpunkt noch den Radius dazurechnen und dabeiр 3 nicht den eventuell vorhandenen Maпstab vergessen.І   ЖЖEDGEЌ$> DЌ $@ Ќ$>Ќ$> %`'L р < GESCHAFFT! Kante ist in der View selektiert, jetzt nur noch р ? das Mittelkreuz erzeugen (мberstand 2.5 mm, aber das haben Sie р 3 doch sicher in den Dokumentoptionen eh hinterlegt) Д{ЎGсzd?З %v'Lmed(0)р A um den Fehler brauchen wir uns nicht kќmmern, das aufgrund einesр = Bugs in der API von AddCenterMark IMMER TRUE (also geglќckt)р  zurќckgegeben wirdр ? (SPR 119537 - "DrawingDoc::AddCenterMark always returns TRUE")kџџ@џ JўШрB zum Schluп heben wir die Selektion noch auf und lassen einmal denр9 Bildschirm neu zeichnen, damit alles schіn aussieht :-)) B@x B@zр; wenn alles geklappt hat kіnnen wir das ja wieder verlassen|џџ8ЃX0рE jetzt ist irgendein Fehler passiert; ќblicherweise wurde irgendetwasрG nicht richtig selektiert also geben wir mal einfach eine ErklфrungsboxрG aus. Sollte etwas anderes nicht okay gewesen sein oben die Verzweigungр? auf die Fehlerfalle auskommentieren, dann kommen die richtigenр FehlermeldungenІЖIUps, Probleme. Bitte vorher eine Flфche in einer Zeichenansicht auswфhlen ~ЖMittelkreuz MakroA|oџџ`џџџџXџџџџЙAttribute VB_Name = "mittelkreuze1" Option Explicit ' *B’ Makro erzeugt fќr alle Kreise eineusgewфhlten FlфРche inEZeinanst die dazugehіr(end6Mи. D Idee u@nd derƒ"grіп‡Teil s Codes stammt "vƒKev€;Silbert (www.€Ёmech@.com),#hi€Yerweit1€deutsch kommeМnt€€І€ЅƒBOйƒstkr p†#j‚^annƒ!dasЇYr€•. Es k€ bei zu€‹cht liegŠKan!TpassР#en 0s!zelne Bohrun @ nWkorrekt gekennzA^net werРY. NoФchУ#gib@3@ ­@q У_@eg.Bƒ 07.12.2001 Stefan Berli tz (sТ.@[С@solidworks.cad.de)Chtt0p://ŽKwtјoolE‚УЦ{тg€:dlaA;|ƒ Ь~ТПХ@ƒиСg„emП Obj€[e Dim s€wApp AsBc@Drawi ngDocMSeˆlecA№MgrЭРMathUt@]Ј aƒ Face  VˆiewmEdgQAСCountсL˜ong СLi`\a@VariРOP`aramsJC№urveЁс %‚јTypу !0С‡ajm@e€inРdT"rƒfor!onфfUmwandlу#[a=Fel biРuЅds"„um]h`~brau! wirAd paar 1‚ble€с1LoDca.(3)D,ou`d`(2НЮvРAЄco„Ы aXAedсIџaHJ A7b Jщ `Radiuт1 v@JPТ: Med7щ2”n€‚Ч%Sta /ardvA@Ч&i!‡EretvaleaBwea€+С zum SchlubпТМKon С˜d`efiniс. !T%h z$en# (pkt{†(щ~dуЙб О(Г№X@$haЪeWP ќe PJрЕЦR-4р…В(gќltige– OAќ fќ@‡џД2q pкБ!46SфReс‡Pr(A“жи(15T9ovЭE[.SbІ((Vб!ХUDё kіnQ”Б5K@а[ep ntр0hP4Aufgabeэ@wв;ЦW@“ѓ;•C@AnzahlВ\dџMу0ХбqQСрЕдЪ?а!8GEсƒЗЇ= ПФGЁfWЂЈNs5xџƒсk@OАЌа=ЗŸ ˆ'2дГ+ i@0 хр[(‡- ЕMsхDIрLje№klsЂnhфch Я ‚dV.ў.д1бQ`P‘љ! (iФcв№3„№ KrДшбИ Set Curve = EdgeObj.Ge"t ' ... und den Type s KрnzuИgesVtD=В.Ihtity() Ђwenn es sich beimW um eindKreistyp handelt:IfWcIRCLE_TYPE Then(М' die ganzSfolgeMn Akt$iofsijnu r aus‚ Do0uble!ƒ dLрoc(0)ŠCрu1Œ1„!Z" 2Œ2Œ'ц’RadЂi Hmer 8 Ё4uns@`@nocоh „Ѓž„6N B#a•Af"UmformQeren"5 Fs„ -"f$ V arianЬsvР"џ`"a+СŠ€0сK‰IЅƒЁ"€he!sтŠЊPa2"Э(cz)`E$ze€Вn.-Acрhtung`"`^рЂDopp –lamЁ€&n (м ZgРW Safearr|ay@ ˜уЌ#AЧoƒMathUti l.Cre``Po int((!)N*˜Die!. /dLр5@+ Ы„ t6r†!/iс.mdao€$'‚(sT%  rix v@BtoriЁ~multipXlizА EXЁ eІdР5.MCyЦ Р(oViewЂюAFbс Ѓuholcф†!RwieЁЛj Ф"naJlesю9lqbK (ќŽР…K-сe5). JŒтŽТ^oР­$iJl{s€,MkKBQ` K +e а Bцe }auЃ#;['+д.A1%Da ta л' nu|n а2gсgвzPr <Сj€ZЁ1r SˆchrpJ. Dq ў"є[Об@†_2 г'сg`3 Uh hyaboрУM Xь-Ro!5z C€Sƒ qe„Fa*rechA‡Ѓa0~бр Vvc№…Rjvor"MРaпstabё,0—`4.retval`+DrawingDocф{ByID("", "EшDGEp_›сV=“hё\+ Є * ж/Р(12), ПюНЙ1/ў)2DGESCHAFFјT! +r0Ё5ё §x•,FqžŸ` Ђ№ГщœerѓS Q0ЂР2.5 mm”r8гу6SiN‡dАfR­‹€HђnPbkum„opdЇeh h0RРerlegt,DOc. Ї(0.0025, TrueўGp(a'FR brЯ1А.хp#škќ_ЁŸёrfgr1)5˜МAР' Bugsб@qРAPI voрГњЏIMM№­TRUE (aq‹geglЈќck 'Бrp-рe ’ЁJd[(' (SPR 119€537 - "w,::KЗalwayds РurP~б"%ИE IfгNepxt iГS‘mСЁCluп hХэFgqЁBЁlaЂŸm‡6…Bild@yirm neu žzЎ :‘бhal] іnЁtsie`ht :-х,x:CvlwСNc1"ушWС€ЪowRed=УS'@У№‰sgek lapptaН kœіn1Cб‹ja‚gаpу Exit0 SubгUErЈrorop4а'44щaYir@QdАР БЕ pарtt; ќFbБЙфИ wu№Ь qфtwaФ%^‚NryQigає#ф!pдl б^fрдqe ErklфР*gsbo xГ '. So@llte ea M1уr™г.ok€Œgдew‚‡sq o`rl VА> Уg \зf›’ 4f‘ko 3џ б1ˆб@#ТЄ хчК'”mРВ eCР MsgBox("Ups, Pr‚o@Дme. BбЖ а5rЁо0 e FlюфаžБ7сrm‘ыaзGЈXЁ;vbCqicalP_щMMakroС2E Аnd Sub џџџџ8€ўџџџџџџџ(џџџџџџџџџџ%џџџџHџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџпўЪџџџџџџџџxџџџџЛАAttribute VB_Name = "ThisLibraryˆ" ˆBasˆ0{801A2004-A66C-11D3-A8BD-0861E BBD6} |GlobalЮSpa‚c’False dCreatablPredeclaIdАTru BExposeTemplate`Deriv’BuРstomizD2вмц№Шb