Posts

Analyzing the BUG in IntersectWith() - AutoCAD .Net API

Image
One of the common tasks while solving geometric problems in CAD environment is to find the intersection of two geometric entities such as Lines, Polylines, Polygons (Closed Polyline in CAD), Circle, Ellipse, Regions etc. Natural problems exist where a solution may solely depend upon the intersection and the count of intersections. A practical example where intersection of geometric entities matters is Cutting a polygon into two parts. Another fundamental problem in computational geometry, CAD, GIS, motion planning and Computer Vision is to detect whether a given point lies inside or outside the given polygon or plane. The simple solution to this problem is to test how many times a ray starting from the given point extends towards the edges of a polygon. An even number of intersections implies that the point is outside of the polygon and vice versa. Intersections are sometimes also referred when testing to detect overlap of two polygons. In such a case, the region of intersecti

SpaTools: Create DogBone Fillet

Image
  Corners can either be chamfered or curved to reduce the sharpness of edges. When a transitional edge is introduced between two faces of an object or two sides of a shape, the corner is chamfered. The same corner can also be rounded off for a curve. FILLET is a native command in the CAD environment used for rounding off sharp edges. This command takes just two edges (Line segments) & a radius as input and creates an Arc having deflection angle equal to the interior angle of lines as depicted below: The Arc is always inwards to the edges as depicted below: Apart from curving inwards, there are cases where an outward curve may be required. Let us take the example of cutting materials with a CNC (Computer Numerical Control)  router or machine. This is a computer-controlled machine which performs cuts, but unlike 3D printers, a CNC machine use subtractive manufacturing to create the end product. In other words, these machines work by removing material from an existing piece rather tha

SpaTools: ShrinkWrap - A tool to create Concave Polygon

Image
  Relationships in all environments have boundaries which are generally acceptable limits usually set for permissible behavior to a specific relation. The flexibility of a boundary varies with the relationship…formal relationships have a very rigid boundary and cordial relationships (family and friends) cling-on very softly. TIN (Triangulated Irregular Network) is a relationship known in the GIS or CAD environment developed from survey data points. Workflows in these environments take an optional input of “Boundary” to limit outputs for the extents of a surface. AutoCAD Civil 3D, BricsCAD or any other CAD package is used in the CAD environment whereas ArcGIS 3d Analyst, QGIS or any other GIS software are tools in the GIS environment. The surface generated from TIN is then utilized to create contours, volumetric computations (Cut/Fill) and other processes. The “Boundary” refines such processes for a surface in the TIN. It is created by connecting exterior data points forming

SpaTools: Bisect an angle

Image
  In the continuation of the last blog about Constructing the triangle when all sides are known, I come to know that we can bisect an angle in CAD with different ways.   Prior to discuss about different ways to bisect an angle, let us recall how we used to bisect an angle during high school studies using compass and scale. No doubt, it was so interesting as well as fun to do such exercises.   In CAD environment like AutoCAD or BricsCAD, we can bisect an angle in following ways:    Using XLINE command     This method creates a XLINE object which is a Construction Line having infinite length with no any defined start point and end point. It is often needed to construct a LINE object which bisects an angle.     2.      This method is little bit hectic but a line can be created as a bisector of the angle. This involves creation of a circle and trimming of the circle as depicted below:   In order to make things simple and automated, I have developed a JIG t

You Are Responsible!!!

Image
Recently, I happened to interview a GIS Analyst for some GIS work. I inquired about his approach to calculate a distance between two points with coordinates (x 1 , y 1 ) and (x 2 ,y 2 ). He showed me ways through attribute tables, measuring tools, Google Earth, GPS and finally a formula: Width = Area / Length… that’s when it really struck me. I’ve come across many other GIS Graduates and GIS Professionals criticizing the lack of job opportunities amid multi-billion dollar projects like CPEC, renewable Energy, Housing and other infra structure which are under execution in Pakistan. Another point of their debate focuses more specifically on their “GIS Skills” going unnoticed in this modern age of technology and tools.  So, what really is happening? Who is actually responsible here? GIS started off when it was still an immature, not-very-user-friendly technology, and few people knew how to use it. Publishers and Academia supported early GIS developments. Steadily with time, and wi