{"id":434,"date":"2011-06-30T13:00:22","date_gmt":"2011-06-30T20:00:22","guid":{"rendered":"https:\/\/blogs.plm.automation.siemens.com\/t5\/Siemens-PLM-Corporate-Blog\/Geometric-Constraint-Solving-and-Japanese-Sangaku\/ba-p\/334727"},"modified":"2026-03-26T11:00:24","modified_gmt":"2026-03-26T15:00:24","slug":"geometric-constraint-solving-and-japanese-sangaku","status":"publish","type":"post","link":"https:\/\/blogs.sw.siemens.com\/news\/geometric-constraint-solving-and-japanese-sangaku\/","title":{"rendered":"Geometric Constraint Solving and Japanese Sangaku"},"content":{"rendered":"<p><P><\/P><P style=\"text-align: left\"><EM><A rel=\"attachment wp-att-6611 nofollow noopener noreferrer\" href=\"http:\/\/blog.industrysoftware.automation.siemens.com\/blog\/2011\/06\/30\/geometric-constraint-solving-sangaku\/rectangle_2\/\"><\/A>Sangaku<\/EM> are wooden tablets which were inscribed with Euclidian geometry puzzles and displayed near temples or shrines. Here\u2019s an example of one from over 200 years ago:<\/P><BR \/><P style=\"text-align: center\"><A rel=\"attachment wp-att-6614 nofollow noopener noreferrer\" href=\"http:\/\/blog.industrysoftware.automation.siemens.com\/blog\/2011\/06\/30\/geometric-constraint-solving-sangaku\/sangaku_3-2\/\"><IMG class=\"aligncenter size-full wp-image-6614\" src=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/wordpress\/images\/2011\/06\/sangaku_31.jpg\" alt=\"\" width=\"287\" height=\"286\" \/><\/A><\/P><BR \/><P style=\"text-align: center\">&nbsp;<\/P><BR \/>A statement of the problem is as follows:<BR \/><BLOCKQUOTE>The largest circle (shown in red) has diameter AB. The medium circle (shown in green) has a diameter AC where C lies on the line AB. CDB is an isosceles triangle where the lengths of CD and DB are the same. The smallest circle (shown in blue) is tangent to the triangle and both other circles, and has point E at its center.<BR \/><BR \/>Prove that the lines AB and CE are perpendicular.<\/BLOCKQUOTE><BR \/>An interesting challenge, but what has this got to do with the D-Cubed constraint solvers? Bear with me \u2013 I\u2019ll come back to this.<BR \/><BR \/><!--more-->In <A title=\"Conversation with Ian Morrison\" href=\"http:\/\/blog.industrysoftware.automation.siemens.com\/blog\/2011\/06\/09\/d-cubed-software-saxophones\/\" rel=\"nofollow noopener noreferrer\"><SPAN style=\"text-decoration: underline\">my previous post<\/SPAN> <\/A>Ian Morrison said that the feature he had implemented in the <A title=\"D-Cubed Components information\" href=\"http:\/\/www.plm.automation.siemens.com\/en_us\/products\/open\/d-cubed\/index.shtml\" rel=\"nofollow noopener noreferrer\">D-Cubed Components <\/A>that has the biggest impact on users is the \u201c&#8230; <EM>automatic solving of over-constrained but consistent configurations &#8230;\u201d<\/EM>. In this post, I\u2019d like to explain more about this feature as it is fundamental to the ease of use of a practical constraint solver.<BR \/><BR \/>\u201cOver-constrained but consistent\u201d is how we refer to models which include constraints that are redundant but are always satisfied. A simple example is this rectangle:<BR \/><P style=\"text-align: center\"><IMG class=\"aligncenter\" src=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/wordpress\/images\/2011\/06\/rectangle_2.jpg\" alt=\"\" width=\"275\" height=\"172\" \/><\/P><BR \/>Clearly, in two dimensions you only need three perpendicular constraints to define a rectangle. Adding the fourth perpendicular isn\u2019t necessary, but it does not conflict with the other three. In a similar way, the opposite sides of the rectangle are geometrically parallel and it isn\u2019t necessary to constrain them.<BR \/><BR \/>There are many other examples like this &#8211;&nbsp;you might have learnt about some of them at school. For the common cases, the D-Cubed constraint solvers have special-purpose code which will recognise and allow for the configuration. However, there are thought to be an infinite number of cases and it isn\u2019t possible to search for all of them explicitly. So, the project which Ian referred to gives us a general method of handling them.<BR \/><BR \/>What this means for users of applications which incorporate the D-Cubed constraint solvers is that they can concentrate on building their models without having to be concerned about the details of exactly which constraints to apply. Any combination of consistent constraints can be applied.<BR \/><BR \/>This is even more important in 3 dimensions. Going back to what Ian said: \u201c<EM>In 3 dimensions it is almost impossible to constrain a model in a non-redundant wa<\/EM>y\u201d. We can see this by extending the rectangle example above. Can you say how many perpendicular constraints are needed to make a rectangular box from a collection of points, lines and planes? I think 9 are sufficient if they are put in the right places, but the advantage of the <A title=\"D-Cubed 3D DCM information\" href=\"http:\/\/www.plm.automation.siemens.com\/en_us\/products\/open\/d-cubed\/products\/3ddcm\/index.shtml\" rel=\"nofollow noopener noreferrer\">D-Cubed 3D DCM <\/A>is that you don\u2019t need to know or care.<BR \/><BR \/>Coming back to the Sangaku puzzle, it was straightforward to build this model in the <A title=\"D-Cubed 2D DCM information\" href=\"http:\/\/www.plm.automation.siemens.com\/en_us\/products\/open\/d-cubed\/products\/2ddcm\/index.shtml\" rel=\"nofollow noopener noreferrer\">D-Cubed 2D DCM <\/A>test harness, applying constraints as necessary. Once this had been done, the software immediately deduced that the two lines are always perpendicular. Incidentally, there is another place where a redundant constraint can be added \u2013 a tangency between the red circle and the green circle.<BR \/><BR \/>Finding the solution to this kind of geometric puzzle can be interesting, but it\u2019s not something that you want to force end users to do. Fortunately, the DCM technology takes care of this, and allows engineers to focus on what they are trying to achieve in their designs. Like a lot of powerful, easy to use software, it\u2019s often the things you don\u2019t notice that are the most important.<BR \/><BR \/>Mike<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sangaku are wooden tablets which were inscribed with Euclidian geometry puzzles and displayed near temples or shrines. Here\u2019s an example of one from over 200 years ago:            A statement &#8230;<\/p>\n","protected":false},"author":45687,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spanish_translation":"","french_translation":"","german_translation":"","italian_translation":"","polish_translation":"","japanese_translation":"","chinese_translation":"","footnotes":""},"categories":[1],"tags":[],"industry":[],"product":[],"coauthors":[],"class_list":["post-434","post","type-post","status-publish","format-standard","hentry","category-news"],"_links":{"self":[{"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/posts\/434","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/users\/45687"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/comments?post=434"}],"version-history":[{"count":1,"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/posts\/434\/revisions"}],"predecessor-version":[{"id":435,"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/posts\/434\/revisions\/435"}],"wp:attachment":[{"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/media?parent=434"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/categories?post=434"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/tags?post=434"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/industry?post=434"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/product?post=434"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/news\/wp-json\/wp\/v2\/coauthors?post=434"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}