We do have a public bug tracking system at java.net, right there with the source code repository.

But we really don't want unknown people posting to it, so your best approach is still to post bugs to this forum or just mail them directly to me.

   -Steve

At 12:26 AM 4/29/2013, you wrote:
Thank You for the fast answer and the good software.
Is this a good place for placing bug reports or you have some kind of bugtrack system ?

Regards,
Radoslav


On Saturday, April 27, 2013 8:06:56 PM UTC+3, strubin wrote:
Thanks for the bug report. What you have done is sufficient for us to fix this bug. I will write back to you when it has been patched in the source code repository.

   -Steven Rubin

At 09:39 AM 4/26/2013, you wrote:
Hello,

I see that this is an old issue, but I get the same results when try to export Cell in CIF format. I'm using Electric 9.03 and rcmos technology to generate a pcb with rounded corners of the traces. I see when exporting to CIF format that the pins are not scaled, while the arcs are scaled according to Technology scale.

I'm not a programmer, but I found the function in Electric source code ( /com/sun/electric/tool/io/output/CIF.java ),
which gets the PolyBase object and checks if it is Round, Box or Poly.
It looks like the scaling of the Poly.Type.DISC object is done to the radius of the DISC, while it should be done to the diameter. At the end I'm attaching the method that generates the .CIF file and I have one questions:

What is the workflow that I should follow in order to get Electric to work with the new version of CIF.java file ? Should I compile everything from source or when Electric runs it compiles automatically the CIF java class. I'm not familiar with the java workflow and actually I don't know how to update the file correctly, so that next time I run Electric,
to use the file with the corrected radius in the scale() function.

Regards,
Radoslav

method:

private void writePoly(PolyBase poly, Cell cell, Geometric geom)
    {
        Point2D [] points = poly.getPoints();
        if (poly.getStyle() == Poly.Type.DISC)
        {
            checkResolution(poly, cell, geom);
            double r = points[0].distance(points[1]);
            if (r <= 0) return;            // ignore zero size geometry
int radius = scale(r); // HERE SHOULD BE SCALED DIAMETER (I THINK)
            int x = scale(points[0].getX());
            int y = scale(points[0].getY());
            String line = " R " + radius + " " + x + " " + y + ";";
            writeLine(line);
        } else
        {
            // ignore zero size geometry
            Rectangle2D bounds = poly.getBounds2D();
            if (bounds.getHeight() <= 0 || bounds.getWidth() <= 0) return;
            // simple case if poly is a box
            Rectangle2D box = poly.getBox();
            if (box != null)
            {
checkPointResolution(box.getWidth(), box.getHeight(), cell, geom, poly.getLayer(), poly); checkPointResolution(box.getCenterX(), box.getCenterY(), cell, geom, poly.getLayer(), poly);
                int width = scale(box.getWidth());
                int height = scale(box.getHeight());
                int x = scale(box.getCenterX());
                int y = scale(box.getCenterY());
String line = " B " + width + " " + height + " " + x + " " + y + ";";
                writeLine(line);
                return;
            }
            // not a box
            checkResolution(poly, cell, geom);
            StringBuffer line = new StringBuffer(" P");
            for (int i=0; i<points.length; i++)
            {
                int x = scale(points[i].getX());
                int y = scale(points[i].getY());
                line.append(" " + x + " " + y);
            }
            line.append(";");
            writeLine(line.toString());
        }
    }


--
You received this message because you are subscribed to the Google Groups "Electric VLSI Editor" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit <https://groups.google.com/groups/opt_out>https://groups.google.com/groups/opt_out.



--
You received this message because you are subscribed to the Google Groups "Electric VLSI Editor" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit <https://groups.google.com/groups/opt_out>https://groups.google.com/groups/opt_out.



--
You received this message because you are subscribed to the Google Groups "Electric 
VLSI Editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to