Migrating Add-Ins to MicroStation CONNECT...MicroStation CONNECT Mark Stefanchuk – CTO Phocaz,...

47
Migrating Add-Ins to MicroStation CONNECT Mark Stefanchuk – CTO Phocaz, Inc.

Transcript of Migrating Add-Ins to MicroStation CONNECT...MicroStation CONNECT Mark Stefanchuk – CTO Phocaz,...

  • Migrating Add-Ins to MicroStation CONNECT

    Mark Stefanchuk – CTO Phocaz, Inc.

  • • Deck Sections• Pile Bent• Concrete Bent• Title Block• Project Final (ProjectWise)• Deed Writer• Property Stats• Reference Manager• Bridge Notes• Bridge Group• Splash• DOTS• SDW• BRPE• SDJ-Electra• MH.LOS

    • Existing Features• Signs C3D• Signs ORD• TRNSprt• Pavement Marking Tool• Place Cell Group• Place Block Group• Drainage Structures• Border Swap• Revision Shift• Project Close Out• Extract TB• Spot Elevation• ET Golf• PhotogeoDWG/DGN

  • 1989

    1993

    1997

    2004

    2010

    2014 - Present

  • Add-In

  • TriviaHow old is J?

  • Challenge #1: Upgrade Resistance

  • PLAN

    ALIGN

    ANALYZE

    IMPLEMENT

    MEASURE

    Challenge #1: Upgrade Resistance

    Suggestion: Continuous Tech Management

  • PLAN

    ALIGN

    ANALYZE

    IMPLEMENT

    MEASURE

    Challenge #1: Upgrade Resistance

    Suggestion: Continuous Tech ManagementIDEATION

    SUNSET

  • Bonus TriviaWhat does the

    J mean?

  • Challenge #2: Multiple Versions

  • Challenge #2: Multiple Versions

    Suggestion: Multiple Configurations

  • Challenge #2: Multiple Versions

    Suggestion: Code to the lowest common denominator

  • Challenge #3: Civilized Cells (ORD)

    i.e. The API does not have any tools to create and/or modify them.

  • Challenge #3: Civilized Cells

    Suggestion (from Bentley): Use Key-ins

  • Challenge #3: Civilized Cells

    Suggestion (ours): Don’t

  • Challenge #3: Civilized Cells

    Suggestion (ours): Don’t

  • Challenge #4: Cell Placement is Slow

  • Challenge #4: Cell Placement is Slow

    Solution: Avoid large arrays of nested cells.

  • Challenge #4: Cell Placement is Slow

    Solution: Avoid large arrays of nested cells.

  • Challenge #5: CreateCellElement1 is Broken in OpenRoads Designer

  • Challenge #5: CreateCellElement1 is Broken in OpenRoads DesignerSolution: Loop through element list and add separately.

  • TriviaWhat is the

    config variable used to tell

    MicroStation where to find cell libraries?

  • Challenge #6: Text Element Justification is Broken in MS CONNECT

  • Challenge #6: Text Element Justification is Broken in MS CONNECTSolution: Replace with text node element, CreateTextNodeElement1

  • Challenge #7: Tag Elements are Broken in MS CONNECTTag elements will not hide…

  • Challenge #7: Tag Elements are Broken in MS CONNECTSolution: Replace tags with element types.

  • Challenge #8: CreateTransientElement1 has changed – a little…You can’t pass null or an index to the first element of an array in CONNECT.

  • Challenge #8: CreateTransientElement1 has changed – a little…Solution: Pass complete element not just the index.

  • Challenge #9: ORD is a Moving Target

  • Challenge #9: ORD is a Moving Target

    Solution: Test!

  • Challenge #10: Add-In Requirements

  • Challenge #10: Add-In Requirements

    Solution: Compiler directives

  • Challenge #10: Add-In Requirements

    Solution: Compiler directives

  • Challenge #11: Command Key-ins

    csproj requires a manual change to the command table ItemGroup in order to support key-ins.

  • Challenge #11: Command Key-ins

    csproj requires a manual change to the command table ItemGroup in order to support key-ins.

  • Add-Ins can have their own configs. What MS folder are

    these found in?

  • Challenge #12: The GUI

    How can I avoid copying my GUI code?

  • Challenge #11: The GUI

    How can I avoid copying my GUI code?

  • Challenge #12: The GUI

    Solution: Link from one project to the other.

  • Bonus Challenge: Support

    Positive thoughts…

  • Bonus Challenge: Support

    Solution: Submit a ticket.

  • Bonus Challenge: Support

    Solution: Use the news groups.

  • TriviaHow do you pronounce Phocaz,

    Inc.?

  • Thanks!

    • Mark Stefanchuk – CTO at Phocaz, Inc.• [email protected]• Melbourne, FL

    mailto:[email protected]

    Migrating Add-Ins to MicroStation CONNECTSlide Number 2Slide Number 3Slide Number 4Slide Number 5Slide Number 6Slide Number 7Slide Number 8Challenge #1: Upgrade ResistanceSlide Number 10Slide Number 11Slide Number 12Challenge #2: Multiple VersionsChallenge #2: Multiple VersionsChallenge #2: Multiple VersionsChallenge #3: Civilized Cells (ORD)Challenge #3: Civilized CellsChallenge #3: Civilized CellsChallenge #3: Civilized CellsChallenge #4: Cell Placement is SlowChallenge #4: Cell Placement is SlowChallenge #4: Cell Placement is SlowChallenge #5: CreateCellElement1 is Broken in OpenRoads DesignerChallenge #5: CreateCellElement1 is Broken in OpenRoads DesignerSlide Number 25Challenge #6: Text Element Justification is Broken in MS CONNECTChallenge #6: Text Element Justification is Broken in MS CONNECTChallenge #7: Tag Elements are Broken in MS CONNECTChallenge #7: Tag Elements are Broken in MS CONNECTChallenge #8: CreateTransientElement1 has changed – a little…Challenge #8: CreateTransientElement1 has changed – a little…Challenge #9: ORD is a Moving TargetChallenge #9: ORD is a Moving TargetChallenge #10: Add-In RequirementsChallenge #10: Add-In RequirementsChallenge #10: Add-In RequirementsChallenge #11: Command Key-insChallenge #11: Command Key-insSlide Number 39Challenge #12: The GUIChallenge #11: The GUIChallenge #12: The GUIBonus Challenge: SupportBonus Challenge: SupportBonus Challenge: SupportSlide Number 46Thanks!