{"id":596,"date":"2019-12-31T10:12:00","date_gmt":"2019-12-31T02:12:00","guid":{"rendered":"http:\/\/localhost:8080\/?p=596"},"modified":"2019-12-31T10:12:00","modified_gmt":"2019-12-31T02:12:00","slug":"c-solidworks-%e4%ba%8c%e6%ac%a1%e5%bc%80%e5%8f%91-api-%e6%8a%8a%e9%9b%b6%e4%bb%b6%e4%b8%ad%e7%9a%84%e5%9d%90%e6%a0%87%e7%82%b9%e8%bd%ac%e6%8d%a2%e5%88%b0%e6%80%bb%e8%a3%85%e9%85%8d%e4%b8%ad","status":"publish","type":"post","link":"https:\/\/blog.ke-zhi.com\/?p=596","title":{"rendered":"C# SolidWorks \u4e8c\u6b21\u5f00\u53d1 API &#8212; \u628a\u96f6\u4ef6\u4e2d\u7684\u5750\u6807\u70b9\u8f6c\u6362\u5230\u603b\u88c5\u914d\u4e2d"},"content":{"rendered":"<h1> <a href=\"https:\/\/www.cnblogs.com\/solidworksapi\/p\/12897443.html\" target=\"_blank\" rel=\"nofollow noopener\"> <span>C# SolidWorks \u4e8c\u6b21\u5f00\u53d1 API &#8212; \u628a\u96f6\u4ef6\u4e2d\u7684\u5750\u6807\u70b9\u8f6c\u6362\u5230\u603b\u88c5\u914d\u4e2d<\/span> <\/a> <\/h1>\n<p>\u4eca\u5929\u6211\u4eec\u6765\u770b\u4e0bsolidworks\u4e2d\u7684\u5750\u6807\u77e9\u9635\u8f6c\u6362\uff0c\u8fd9\u4e2a\u4f8b\u5b50\u662f\u628a\u5b50\u96f6\u4ef6\u4e2d\u7684\u4e00\u4e2a\u57fa\u51c6\u8f74\u7684\u4e24\u4e2a\u7aef\u70b9\u8bfb\u51fa\u6765\uff0c\u5e76\u8f6c\u6362\u5230\u603b\u88c5\u914d\u7684\u5750\u6807\u7cfb\u4e2d\uff0c\u5f97\u5230\u5728\u603b\u88c5\u914d\u4f53\u5750\u6807\u7cfb\u7684\u4f4d\u7f6e\uff0c\u53ef\u4ee5\u8fdb\u4e00\u6b65\u5224\u65ad\u8f74\u7684\u771f\u5b9e\u5b89\u88c5\u65b9\u5411\u3002<\/p>\n<p><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/img-blog.csdnimg.cn\/20191231100339637.png?x-oss-process=image\/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3plbmdxaDAzMTQ=,size_16,color_FFFFFF,t_70\"><\/p>\n<p>\u76f4\u63a5\u4e0a\u4ee3\u7801\uff1a<\/p>\n<pre><code> private void btn_Transform_PartToAsm_Click(object sender, EventArgs e)\n        {\n            \/\/\u8fde\u63a5\u5230Solidworks\n\n            \/\/\u8fd9\u4e2a\u4f8b\u5b50\u662f\u628a\u96f6\u4ef6\u4e2d\u7684\u4e00\u4e2a\u57fa\u51c6\u8f74 \u7684\u4e24\u4e2a\u70b9\u7684\u5750\u6807\u8f6c\u6362\u5230\u88c5\u914d\u4f53\u4e2d\n\n            \/\/\u8bf7\u6253\u5f00\u88c5\u914d\u4f53\uff0c\u5e76\u5728\u67d0\u4e2a\u96f6\u4ef6\u4e0b\u9009\u62e9\u4e00\u4e0b\u57fa\u51c6\u8f74\n\n            ISldWorks swApp = Utility.ConnectToSolidWorks();\n\n            ModelDoc2 swModel = (ModelDoc2)swApp.ActiveDoc;\n\n            SelectionMgr swSelMgr = swModel.ISelectionManager;\n\n            Feature swFeat = (Feature)swSelMgr.GetSelectedObject6(1, 0);\n\n            String sAxisName = swFeat.Name;\n\n            RefAxis RefAxis = swFeat.GetSpecificFeature2();\n\n            var vParam = RefAxis.GetRefAxisParams();\n\n            Component2 inletPart = swSelMgr.GetSelectedObjectsComponent4(1, 0);\n\n            double[] nPt = new double[3];\n            double[] nPt2 = new double[3];\n\n            object vPt;\n            object vPt2;\n\n            nPt[0] = vParam[0]; nPt[1] = vParam[1]; nPt[2] = vParam[2];\n            nPt2[0] = vParam[3]; nPt2[1] = vParam[4]; nPt2[2] = vParam[5];\n\n            vPt = nPt;\n            vPt2 = nPt2;\n\n            MathUtility swMathUtil = (MathUtility)swApp.GetMathUtility();\n\n            MathTransform mathTransform = inletPart.Transform2;\n\n            MathTransform swXform = (MathTransform)mathTransform;\n\n            MathPoint swMathPt = (MathPoint)swMathUtil.CreatePoint((vPt));\n\n            MathPoint swMathPt2 = (MathPoint)swMathUtil.CreatePoint((vPt2));\n\n            \/\/swXform.Inverse(); \u53cd\u8f6c\u7684\u8bdd\u5c31\u662f\u628a\u88c5\u914d\u4f53\u4e2d\u7684\u70b9\u5750\u6807\u8f6c\u5230\u96f6\u4ef6\u5bf9\u5e94\u7684\u5750\u6807\u7cfb\u7edf\u4e2d\n\n            swMathPt = (MathPoint)swMathPt.MultiplyTransform(swXform);\n\n            swMathPt2 = (MathPoint)swMathPt2.MultiplyTransform(swXform);\n\n            var x = swMathPt.ArrayData[0];\n            var y = swMathPt.ArrayData[1];\n            var z = swMathPt.ArrayData[2];\n            var x2 = swMathPt2.ArrayData[0];\n            var y2 = swMathPt2.ArrayData[1];\n            var z2 = swMathPt2.ArrayData[2];\n\n            var v1 = x2 - x;\n            var v2 = y2 - y;\n            var v3 = z2 - z;\n\n            if (Math.Round(v3, 4) != 0 &amp;&amp; Math.Round(v1, 4) == 0 &amp;&amp; Math.Round(v2, 4) == 0)\n            {\n                MessageBox.Show(\"\u6b64\u8f74\u5728Z\u65b9\u5411\u4e0a\");\n            }\n\n          \n        }<\/code><\/pre>\n<p>\u6bd4\u8f83\u5168\u7684\u5173\u4e8e\u77e9\u9635\u8f6c\u6362\u7684\u4e00\u7bc7\u6587\u7ae0\uff1a<\/p>\n<p><a href=\"https:\/\/cadbooster.com\/complete-overview-of-matrix-transformations-in-the-solidworks-api\/#available-transformations-solidworks\" target=\"_blank\" rel=\"nofollow noopener\">https:\/\/cadbooster.com\/complete-overview-of-matrix-transformations-in-the-solidworks-api\/#available-transformations-solidworks<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>          posted @<br \/>\n<span>2019-12-31 10:12<\/span>&nbsp;<br \/>\n<a href=\"https:\/\/www.cnblogs.com\/solidworksapi\/\" target=\"_blank\" rel=\"nofollow noopener\">painezeng<\/a>&nbsp; \u9605\u8bfb(<br \/>\n<span>233<\/span>)&nbsp; \u8bc4\u8bba(<br \/>\n<span>0<\/span>)&nbsp;<br \/>\n<a href=\"https:\/\/i.cnblogs.com\/EditPosts.aspx?postid=12897443\" rel=\"nofollow noopener\" target=\"_blank\">\u7f16\u8f91<\/a>&nbsp;<br \/>\n<a href=\"\" target=\"_blank\" rel=\"nofollow noopener\">\u6536\u85cf<\/a>&nbsp;<br \/>\n<a href=\"\" target=\"_blank\" rel=\"nofollow noopener\">\u4e3e\u62a5<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>C# SolidWorks \u4e8c\u6b21\u5f00\u53d1 API &#8212; \u628a\u96f6\u4ef6\u4e2d\u7684\u5750\u6807\u70b9\u8f6c\u6362\u5230\u603b\u88c5\u914d\u4e2d \u4eca\u5929\u6211\u4eec\u6765\u770b\u4e0bs [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":597,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[4,5],"tags":[7,6,8],"series":[],"class_list":["post-596","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-solidworks-","category-solidworks","tag-api","tag-solidworks","tag-8"],"views":162,"_links":{"self":[{"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/posts\/596","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=596"}],"version-history":[{"count":0,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/posts\/596\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/media\/597"}],"wp:attachment":[{"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=596"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=596"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=596"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fseries&post=596"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}