Documentation |
Check validity of Geometry Description matrix
gstat = csgchk(gd,xlim,ylim)
gstat = csgchk(gd)
gstat = csgchk(gd,xlim,ylim) checks if the solid objects in the Geometry Description matrix gd are valid, given optional real numbers xlim and ylim as current length of the x- and y-axis, and using a special format for polygons. For a polygon, the last vertex coordinate can be equal to the first one, to indicate a closed polygon. If xlim and ylim are specified and if the first and the last vertices are not equal, the polygon is considered as closed if these vertices are within a certain "closing distance." These optional input arguments are meant to be used only when calling csgchk from the PDE app.
gstat = csgchk(gd) is identical to the preceding call, except for using the same format of gd that is used by decsg. This call is recommended when using csgchk as a command-line function.
gstat is a row vector of integers that indicates the validity status of the corresponding solid objects, i.e., columns, in gd.
For a circle solid, gstat = 0 indicates that the circle has a positive radius, 1 indicates a nonpositive radius, and 2 indicates that the circle is not unique.
For a polygon, gstat = 0 indicates that the polygon is closed and does not intersect itself, i.e., it has a well-defined, unique interior region. 1 indicates an open and non-self-intersecting polygon, 2 indicates a closed and self-intersecting polygon, and 3 indicates an open and self-intersecting polygon.
For a rectangle solid, gstat is identical to that of a polygon. This is so because a rectangle is considered as a polygon by csgchk.
For an ellipse solid, gstat = 0 indicates that the ellipse has positive semiaxes, 1 indicates that at least one of the semiaxes is nonpositive, and 2 indicates that the ellipse is not unique.
If gstat consists of zero entries only, then gd is valid and can be used as input argument by decsg.