Home > Community > Forums > Custom IC SKILL > Transform

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 Transform 

Last post Mon, Sep 10 2007 9:46 PM by archive. 4 replies.
Started by archive 10 Sep 2007 09:46 PM. Topic has 4 replies and 2080 views
Page 1 of 1 (5 items)
Sort Posts:
  • Mon, Sep 10 2007 9:46 PM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,910
    Transform Reply

    Hi , I have a polygon (METAL1) in an instance. Im using dbTransform to get the xy of the polygon w.r.t toplevel, but im not able to. For rectangles it is working fine but for polygons it is not giving the exact xy. exact xy = 15.9:1.36 with transform = (17.533 4.965) Inputs are ((db:54977564 cellView db:63255596 objType "inst" prop nil bBox ((16.388 4.46) (20.275 8.92) ) children nil groupMembers nil isAnyInst t isShape nil matchPoints nil net nil parent nil physConns nil pin nil purpose "cell" textDisplays nil assocTextDisplays nil baseName "I1" cellName "XOR" instHeader db:63559468 instTerms nil libName "test_lib" master db:64806956 name "I1" numInst 1 viewName "layout" conns nil mag 1.0 orient "R0" status "firm" transform ((16.855 4.76) "R0" 1.0) xy (16.855 4.76) ) (db:64837364 cellView db:64806956 objType "polygon" prop nil bBox ((1.145 0.505) (1.415 3.4) ) children nil groupMembers nil isAnyInst nil isShape t matchPoints nil net nil parent nil physConns nil pin nil purpose "drawing" textDisplays nil assocTextDisplays nil layerName "ME1" layerNum 46 lpp ("ME1" "drawing") nPoints 12 points ((1.415 1.21) (1.335 1.21) (1.335 1.87) (1.415 1.87) (1.415 3.16) (1.295 3.16) (1.295 3.4) (1.145 3.4) (1.145 0.505) (1.295 0.505) (1.295 0.76) (1.415 0.76) ) ) ) Please let me know why im getting an error for polygons.


    Originally posted in cdnusers.org by rimser9
    • Post Points: 0
  • Mon, Sep 10 2007 10:03 PM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,910
    RE: Transform Reply

    Well, you've not said what you're doing. You've just said you're using dbTransform (and there isn't a function called that), without any clue as to what the arguments are. Then you just listed a list with the expanded view of an instance and a polygon. I've no idea what the "xy" of a polygon means - a polygon is made up of a series of points.

    If you're more explicit about what you're doing - ideally with code and the output it generates - it might be easier to help you. Since the dbTransformPoint() function is pretty simple (if that's what you're using), and widely used, it's very likely to be something you're doing wrong in your code.

    Best Regards,

    Andrew.


    Originally posted in cdnusers.org by adbeckett
    • Post Points: 0
  • Mon, Sep 10 2007 10:16 PM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,910
    RE: Transform Reply

    In the code I have a LayercyclicField where by selecting a layer from that field I calculate the union of all the
    bBox of that layer. But for polygons it si not giving expected output. Sample inputs have been given in the forum.
    I hope this helps. Let me know if anything else is required.

    Yes Andrew I mean dbTransformPoint(). And by xy I mean llx:lly of the polygon.
    I used the command with the following arguments.
    dbTransformPoint(1.145:0.505 list(16.388:4.46 "R0" 1.0))
    output: (17.533 4.965)
    But the output should be 15.9:1.36

    Thanks.


    Originally posted in cdnusers.org by rimser9
    • Post Points: 0
  • Mon, Sep 10 2007 10:26 PM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,910
    RE: Transform Reply

    Well, it's been a while since I did maths at school, but last time I looked 1.145+16.388=17.533 and 0.505+4.46=4.965.

    So I cannot see how you can possibly expect 15.9:1.36?

    If I assume you're trying to transform all the points in the polygon by the "transform" of the instance (rather than the lower left of the instance's bbox), then that would be:

    foreach(mapcar point polygon~>points dbTransformPoint(point inst~>transform))

    and that gives:

    ((18.27 5.97)
    (18.19 5.97)
    (18.19 6.63)
    (18.27 6.63)
    (18.27 7.92)
    (18.15 7.92)
    (18.15 8.16)
    (18.0 8.16)
    (18.0 5.265)
    (18.15 5.265)
    (18.15 5.52)
    (18.27 5.52)
    )

    So I can't work out where you get 15.9:1.36 from!

    Regards,

    Andrew.


    Originally posted in cdnusers.org by adbeckett
    • Post Points: 0
  • Mon, Sep 10 2007 10:33 PM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,910
    RE: Transform Reply

    Ok I was looking at the wrong instance. its ok. Nothing wrong with the command.

    Thanks,


    Originally posted in cdnusers.org by rimser9
    • Post Points: 0
Page 1 of 1 (5 items)
Sort Posts:
Started by archive at 10 Sep 2007 09:46 PM. Topic has 4 replies.