6 Replies Latest reply on Jan 13, 2010 10:23 AM by tom_donnelly

    Polygon to rectangle

    john.alwyn

      Hi,

      I am writing some metal slotting QA code using calibre drc.

      I'd like to know if there is a way to convert polygons having 90 degree angles between edges into rectangles.

       

      Thanks and regards

      John

        • 1. Re: Polygon to rectangle
          chris_balcom

          Hi John,

           

          Is it that you wanted to make small rectangles at the 90 degree corners of your polygons, or that you wanted to select any polygon that had only 90 degree corners, or would you like to select just polygons that are rectangles?

          • 2. Re: Polygon to rectangle
            john.alwyn

            Hi Chris,

            Sorry for my long silence, was on a vacation and could not reply earlier...

            Well. I am looking for a way to fracture/break rectilinear polygons to rectangles using calibre drc svrf code.

            Example, I have a metal polygon having the form of alphabet "E",I would like to break this polygon

            into 4 rectangular regions

            i.e. 3 horizontal rectangles,these belong to the horizontal shapes of the "E" polygon

            and 1 vertical rectangle, this belongs to the vertical column of "E" shaped polygon.

            Please let me know if you have any thoughts on this.

             

             

            Thanks and regards

            John

            • 3. Re: Polygon to rectangle
              chris_balcom

              Hi John,

               

              While Calibre is working on the metal there are no construction lines per se. Instead of breaking a single E shape into 4 pieces, Calibre is designed to treat it as one contiguous shape even if the different parts of the E were in different cells at different hierarchical levels to begin with.

               

              Here is a link to a TechNote but it's only related to this subject, it doesn't really answer your specific question.

              http://supportnet.mentor.com/reference/technotes/public/technote.cfm?tn=mg9359

               

              Some people might consider using the INTERNAL operation with the REGION and OPPOSITE keywords so as to get an approximation of the fracturing effect you had in mind but you would probably want to watch out for performance hit if your design is large and you're using large numbers for the fat metal. I think that's designed for checking minimum width and that's a different usage model than identifying wide metal. At a minimum you might want to use SIZE with UNDEROVER to "filter out" the narrow metal at the beginning of your slot check. DFM SPACE might be better for performance in this case but I haven't used it like this myself yet.

               

              The best help may come from someone who is actually doing this right now. If someone is reading this and has some ideas to offer please feel free to contribute! It would be most welcome.

              • 4. Re: Polygon to rectangle
                john.alwyn

                Hi Chris,

                Thanks for your comments.

                The INTERNAL operation with REGION OPPOSITE was used earlier and as you have mentioned we did see issues with the reference limit to be used for INTERNAL check.

                As of now we will continue using the INTERNAL check with a suitable reference limit, this helps although it is not a foolproof solution.

                Will also check DFM space as mentioned in your reply and see if this helps in some way.

                 

                Thanks and regards

                John

                • 5. Re: Polygon to rectangle
                  hartmut_marquardt

                  The tool of choice for rectangle decomposition is Calibre MDP. Have you considered that one?

                  • 6. Re: Polygon to rectangle
                    tom_donnelly

                    You could try using "DRC MAXIMUM VERTEX 4" or use the MAXIMUM VERTEX option to DRC CHECK MAP to affect individual layers.

                     

                    However you don't have any way to control how the polygon segmenting is done.