• 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. Allegro X PCB Editor
  3. Angle calculation issue with respect to IDF for PTC

Stats

  • Replies 3
  • Subscribers 158
  • Views 13679
  • Members are here 0
More Content

Angle calculation issue with respect to IDF for PTC

archive
archive over 19 years ago

Hi,

I'm working on creating an IDF output that will take all place_bounds and export them to an IDF file for better modelling in Pro-E(PTC).

I have a board file with an arc which is identified by the following information from the database (in paranthesis the variables used further below)
arc center = 1.793,0.133 (a_c)
radius 0.058 (r)
startEnd((1.85 0.12) (1.78 0.19))  ((x1 y1) (x2 y2))
unfortunately the data does not contain the arc angle that was specified inside the package symbol so I'll have to calculate this arc angle in degrees.

If I use file, export, IDF and set TYPE=PTC and Version=2.0 then I'll get the following specification/record for this arc
0    1.850    0.120    0
0    1.780    0.190    -244.305
which states that the arc angle is -244.305

If I however uses the cosinusrelations on the data that I have access to (arc center, radius, arc startpoint and arc endpoint) then I get the following
0   1.850000   0.120000  0.00
0   1.780000   0.190000  -242.83
which states that the arc angle is -242.83
This makes a difference for about approximately 1.5 degrees
I'm using the law of cosines to calculate the angle
http://en.wikipedia.org/wiki/Law_of_cosines (remember the angle=result*180/pi -360)

I'm just wondering how this difference occur. Does anyone have an idea to what I could be doing wrong?


Originally posted in cdnusers.org by ejlersen
  • Sign in to reply
  • Cancel
  • archive
    archive over 19 years ago

    Use the IDF 3.0 format instead.

    Back when I was a Cadence customer I helped validate the implementation (see algroidf doc)

    Let me know if this helps

    Andy

    Andreas Kulik
    Sr. Applications Engineer
    PTC


    Originally posted in cdnusers.org by andyk
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • archive
    archive over 19 years ago

    Hi Andy,

    Thanks for the suggestions, it does however not work properly. Let me explain the actual problem a bit so that you know the reason behind this.
    IDF output today in Allegro only exports one place bound per component and this is the first place bound found on the component. I'm having quite a of users/companies who requires much better modelling and hence use several place bounds for each component. Often som pins are actually modelled using place bounds with height associated. I know this can be modelled in PRO-E where you will have to create a model for each part. The problem however still exists in core Allegro PCB Editor where customers still would like to get feedback on heights. So basically there is no choice but to write an IDF export program that exports all place bounds. Currently there are a preliminary spec for IDF 4 that does exactly what I want but unfortunately it is not finished and no vendors support it at the moment

    Best regards,
    Ole


    Originally posted in cdnusers.org by ejlersen
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • archive
    archive over 19 years ago

    Good point. There are 2 options to work around this and get the end result

    1) Model the parts in ProE and use the IDF 3.0 translator from Allegro and a ecad_hint.map file for ProE. The ecad_hint.map file maps the Allegro footprints to the 3D models.

    I can show you how this works. Let me know if you want to see it and I can setup a webcast.

    2) The Allegro IDF 3.0 translator should combine muliple placebounds into one single shape inthe IDF library file (.emp). It's been a while since I actually worked with it on this level, but you
    might be able to attach a property call HEIGHT to the component instance in Allegro. It shoudl transfer to the IDF library file. If not just use the PACKAGE_HEIGHT_MAX property on one Place_bound (if multiple the highest number will win).

    When you import this into ProE you will get the shape of the part with the max height. It's not pretty but allows for height interference checks in ProE.

    I recommend option1. It's the only way in my opinion, if you have tight spaces, where components overlap in the z dimension.

    Andreas

    PS: IDF 4.0 contains to much data. Which I think is the reason no ECAD or MCAD vendor is going forward, because to could transfer a design from Mentor to Cadence or back. Same applies for MCAD ;-)
    Maybe there will be a new different file format that would protect IP but allow meaningfull transfer between MCAD and ECAD.


    Originally posted in cdnusers.org by andyk
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Cadence Guidelines

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