• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. how to get point of layer that i want in window cell vi...

Stats

  • Replies 5
  • Subscribers 149
  • Views 384
  • Members are here 0

how to get point of layer that i want in window cell view

Noobnoob
Noobnoob 15 days ago

Hello, i am sorry for my English skill.

i am noob for cadence skill language.

As the title says, in window cell view, i want to know point(coordinate) of layer i want

i made a cell named "DECAP" and i placed "DECAP" as mosaic ...

Poly layers is in different hierarchy.

in order to find out all point of Poly layers, i made a script by using skill language...

Script :

wcv = geGetWindowCellView()
overlaps = dbGetTrueOverlaps(wcv wcv~>bBox list("POLY" "drawing") 32 t)

transform = nil
temp = nil
label = nil

foreach(overlap overlaps
transform = append( transform list(dbGetInstTransform(overlap)) )
);foreach
foreach(i transform
temp = append( temp list(nthelem(1 i)) )
);foreach

Result :

((4.2 4.2) "R0" 1.0)
((4.2 4.2) "R0" 1.0)
((4.2 4.2) "R0" 1.0)
((12.2 4.2) "R0" 1.0)
((12.2 4.2) "R0" 1.0)
((12.2 4.2) "R0" 1.0)
(((db:0x1fa1cc9b 0 0) db:0x1fa1ada3)
((db:0x1fa1cc9b 0 0) db:0x1fa1add4)
((db:0x1fa1cc9b 0 0)
(db:0x1fa14b9a db:0x1fa14ca0)
)
((db:0x1fa1cc9b 0 1) db:0x1fa1ada3)
((db:0x1fa1cc9b 0 1) db:0x1fa1add4)
((db:0x1fa1cc9b 0 1)
(db:0x1fa14b9a db:0x1fa14ca0)
)
)

i don't know meaning of (4.2 4.2), (12.2 4.2) ... as result of dbGetInstTransform.

please help me, i want to find out point of poly layer in different hierarhy, in mosaic cell... 

  • Cancel
  • Sign in to reply
Parents
  • Noobnoob
    Noobnoob 7 days ago

    thank you, guys!

    i took a first step for my problem and solved it !!

    as i want, i got a point list.

    next step, i'm going to apply point list to dbPointArrayOr function.

    for example, point_list = ( ((0 0) (5 5)) ((0 5) (5 10)) ((0 10) (5 15)) )

    i think that dbPointArrayOr(wcv point_list)'s result is ( (0 0) (5 15) )

    but, actually, dbPointArrayOr function don't operation.

    what's wrong for me...?

    Thank you for always leaving comments.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Andrew Beckett
    Andrew Beckett 7 days ago in reply to Noobnoob

    The “point list” you are providing is not a list of point lists but rather a list of bounding boxes. dbPointArrayOr will treat this as a list of point lists, and so each of your bounding boxes will be treated as a two-point diagonal line from the lower left to the upper right, and so you are trying to or three zero-area diagonal lines, and hence the result will be nothing.

    In other words, each point list needs to be the outline of a polygon; if you were starting from the coordinates in a bounding box ((llx lly) (urx ury)) then it would need to be ((llx lly) (urx lly) (urx ury) (llx ury))

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett 7 days ago in reply to Noobnoob

    The “point list” you are providing is not a list of point lists but rather a list of bounding boxes. dbPointArrayOr will treat this as a list of point lists, and so each of your bounding boxes will be treated as a two-point diagonal line from the lower left to the upper right, and so you are trying to or three zero-area diagonal lines, and hence the result will be nothing.

    In other words, each point list needs to be the outline of a polygon; if you were starting from the coordinates in a bounding box ((llx lly) (urx ury)) then it would need to be ((llx lly) (urx lly) (urx ury) (llx ury))

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information