比如,ADC上的AVDD这个pin,出了三个正方形的pin,现在想要在这三个正方形的pin上画上重叠的shape,要如何画呢?
如果get_attr [get_pins xxx ] bbox只会得到这三个正方形的最外转边框,得不到详细的三个正方形的形状。
解决思路如下:
1, set j_shape [get_shapes -of $pin]得到这个pin的shape
2,得到shape后,复制这个shape
set geo_masks ""
foreach_in_collection obj $j_shape {
set geo [create_geo_mask -objects $obj ]
append_to_collection geo_masks $geo
}
3,复制好shape后,将其split,对每个split后的shape分别create_shape
foreach_in_collection j_poly [split_polygons -objects $geo_masks -output poly_rect ] {
create_shape -layer M5 -boundary $j_poly -net $net_name -shape_type rect -shape_use stripe
}
4,完成
|