[CONNECT 10.14] Is there a way to set current view to a particular scale (for example 1in=40ft)? Or is there a way to place a fence with its extents equal to a particular scale?

Hello folks,

I'm interested in figuring out a way I can define the scale of a current view.  For example, In AutoCAD, keying in 'zoomxp -> 1/40xp' changes your current view to a scale of 1in=40ft, or whatever your MU/SU were set at in the drawing file.  Is there a similar way to do this in MicroStation?

My overall intent is to quickly print current view at a particular scale.  Being able to place a fence at a defined scale would also achieve the goal, as I could check 'fence' for the Area in the Print dialogue window.

I see that I can define a scale in the Print interface, I'm just wondering if this can be done within a view or with a fence prior to opening the Print dialogue because I would likely try to create a macro involving that functionality. 

Thanks for any feedback you may have!

Thanks,

Scott

Parents
  • What do you want the macro to ultimately do ? knowing this may help in finding you a workflow.

    Timothy Hickman

    CADD Manager | CADD Department

    timothy.hickman@colliersengineering.com

    Main: 877 627 3772| 

    1000 Waterview Drive Suite 201 | Hamilton, New Jersey 08691

  • I want to the user to be able to place a fence and print the fence contents to the default printer without having to change any print settings or draw the extents of the fence himself.  The user wants the extents of the fence to print on 8.5x11 at 1in=40ft scale.

    I actually got most of the way there by drawing a 160,000sf box in the drawing and recording a macro of placing a fence on the limits of the 40,000sf box.  

    The code reads like this, just need to add a combo box and a loop so I'll post in the programming community if I can't figure that out:

    Sub BmrPrint40scFenceV1()
    Dim startPoint As Point3d
    Dim point As Point3d, point2 As Point3d
    Dim lngTemp As Long
    Dim oMessage As CadInputMessage
    
    ' Pause macro playback for user input of a datapoint.
    startPoint = CadInputQueue.GetInput(msdCadInputTypeDataPoint).point
    CadInputQueue.SendDataPoint startPoint, 1
    
    ' Send a data point to the current command
    point.X = startPoint.X + 298057.321023478
    point.Y = startPoint.Y + 441057.738342121
    point.Z = startPoint.Z
    CadInputQueue.SendDataPoint point, 1
    
    ' Send a keyin that can be a command string
    CadInputQueue.SendKeyin "DIALOG PLOT "
    
    CadInputQueue.SendKeyin "PRINT MAXIMIZE "
    
    CadInputQueue.SendKeyin "PRINT EXECUTE "
    
    CadInputQueue.SendKeyin "PRINT EXIT PLOTDLG"
    
    CadInputQueue.SendKeyin "MDL UNLOAD PLOTDLG"
    
    CadInputQueue.SendKeyin "PLACE FENCE ICON "
    
    CommandState.StartDefaultCommand
    End Sub

  • so - setting the print area to view in the printstyle, will not work ?

    Timothy Hickman

    CADD Manager | CADD Department

    timothy.hickman@colliersengineering.com

    Main: 877 627 3772| 

    1000 Waterview Drive Suite 201 | Hamilton, New Jersey 08691

  • Thanks Mary, I achieved my goal described in my comment above.  Used a macro to draw a fence at 40 scale and print at 8.5x11 using a particular print style to add border text/date/time, etc. 

    After customizing the UI the user only needs to click twice to print a drawing.  Once on the macro button on the UI and then once again on the drawing to select a location. Then a nice 40scale print of the area desired pops out of the printer. 

    Can't believe how cool this software is compared to AutoCAD!

    Thanks,

    Scott

  • Nice!

    Tim, I haven't had a lot of luck with "View" AND set scale without the use of something else (like a shape) to get my view about the right size for my scale. That is to say, I can set my view window to "see" a certain area of my drawing, and I can print that view at a scale, but depending how zoomed in I may or may not be, it may not present on the print the way I expect it to look, or the scale I thought I wanted to use might not "fit"

    MaryB

    Power GeoPak 08.11.09.918
    Power InRoads 08.11.09.918
    OpenRoads Designer 2021 R2

        

  • I achieved my goal described in my comment above.  Used a macro to draw a fence at 40 scale and print at 8.5x11 using a particular print style to add border text/date/time, etc.

    In V8i I had a  public domain basic macro that  let you pick boarder paper size from a pick list, and another pick list for the scale from std scale list then I would fence plot by element.

    So now all you need do is work a pick list for standard scales not just 1:40 and you will have created a fabulous tool we could all benefit from .. just  make a lot of comments on how to add different scales and paper sizes so we in metric world could adopt it...

    Great job at working out!

    Lorys

    Started msnt work 1990 - Retired  Nov 2022 ( oh boy am I old )

    But was long time user V8iss10 (8.11.09.919) dabbler CE  update 16 (10.16.00.80) 

    MicroStation user since 1990 Melbourne Australia.
    click link to PM me 

  • now all you need do is work a pick list for standard scales not just 1:40 and you will have created a fabulous tool we could all benefit from

    Something like this?

     
    Regards, Jon Summers
    LA Solutions

Reply Children
No Data