Hey all,
Usually I can find an answer to a question somewhere in the interwebs, but I can't seem to find one for this. I'm officially stumped. I look to you.
Is there a function within MicroStation (V8i SS2/3) that will show/draw the centerline between two curves, whether they be curves of straight lines, arcs, splines, or a combination thereof, whether 2D or 3D?
(Essentially, what's shown here http://communities.bentley.com/products/road___site_design/w/road_and_site_design__wiki/creating-a-centerline-alignment-between-two-horizontal-alignments.aspx -- but with MicroStation. Not InRoads.)
Picture a creek, or a highway where the width of the median may vary, or something like those. I want to be able to pick the shoreline or edge of the highway and automatically get the centerline of said creek or median.
Such a thing seems possible in my head or on paper, but on the screen? Any ideas?
Thanks!
Hi!
To get this discussion started; the only way that I can think of at this time, to do this using Microstation alone is to draw a series of lines between points on either curb element (creek sides) and then draw a curve string, b-spline (thru points), linestring from the mid-points on each line you drew between the curbs / creek sides. There is no simple tool that I can think of at this time.
You could get fancy by gathering points along each side dumping them out to excel, creating an averaging formula for the values and coming up with a series of coordinates you can dump back into MicroStation as vertices of a curvestring/linestring/bspline You could also do this using VBA. Best bet would probably create a VBA to do this.
I Hope This Helps Someone Reading This! (Intergraph>PseudoStation>MicroStation user since 1980's)
I agree with George's first option where you would draw a series of lines between each curb and produce another "curb element" between the mid-points. The problems I can see here would be how the lines drawn between each curb line are going to be estimated. Are you going to use a Perpendicular Snap between lines or just guess-timate where to place them?
With the below screen capture I have two b-spline curves that are clearly not parallel. Using the Perpendicular and Near Point Snaps I have placed lines between these two curves. They are not exactly accurate but just visually perpendicular between them. I have then used the B-Spline By Tangents tool with a Mid Point Snap to place a "centre line" between these two. It is probably not exactly accurate but looks close to what is being requested.
I would think that if you are wanting to perform an operation that is related to road or civil design that you should be using a software package designed for that purpose. The link you provided shows that it can be performed using the tools designed for InRoads. These tools, as you realize, are not included in the base package of MicroStation. Sometimes the complexities of a particular work flow might be better handled with a software package designed for the situation. Rather than redesigning or reprogramming.
RegardsAndrew BellTechnical SupportBentley Systems
Another alternative -
1. Draw a construction line ( Yellow lines ) that connects at the ends of the curb lines
2. Use the 'Sweep Surface Along Curves' tool to generate surface ( tool settings : ' Sweep One along 2 or 3 ' / ' Arc Length' / ' Keep Path ' )
3. Use the ' Extract Iso-Curves ' tool to obtain the center line by clicking on the surface and snapping to the mid point of the yellow construction line.
4. Delete the surface (unless required)
Note: The center line in the above example may not be based on the point of perpendicular / tangency to the outside lines required.
Answer Verified By: David Hollner
Wow, quite honestly I wasn't expecting so many responses this quickly, so thank you guys!
George --
I did use that method before, to draw a bunch of lines between the curves and getting a rough centerline through the midpoints of those. I purposely left that out of my question though to see if someone else (you) would also come up with that answer and if that would be the best method.
Someday though, I would like to learn how to import/export Excel-driven coordinates through VBA or other means for another crazy idea of mine that could help my department at my job out a little with something, but that's for another forum post another day.
Andrew --
Yep, that's pretty much how I did it before, too. Instead of individual lines, I bounced one continuous smartline back and forth so I could delete the whole thing in one keystroke later (in case anyone else wants to try it that way).
We do have InRoads here, but I haven't used it yet. Others at my job do know it, but I was curious of the capabilities of MicroStation alone on this one for now. Thanks for the suggestion!
If two curves aren't parallel, you won't always get a perpendicular line to both curves, so yes, I could try to draw "as-perpendicular-as-possible" lines, or my other idea was to split each curve into equal parts of maybe 10 or 100 (or approaching infinity for the math nerds out there) and connecting the endpoints of each of THOSE segments to those of the other curve... and then drawing through the midpoints -- which it looks like is what's going on in Carl's answer.
Carl --
Judging by your pictures, I'd say you pretty much nailed it, unless there's an easier way that that.
I'm guessing you used SS3 because I don't have the "Arc Length Alignment" tool option with SS2, so I used "Normal" instead. It does sweep a surface in 2D and 3D as it should...
...and that's as far as I could go because when I choose the Extract Iso-Curves tool here, the Attach Cell Reference dialog pops up as if I clicked that instead. Can't figure out why so I'm deeming that button broken for now, but judging by your screenshots it looks like extracting the iso-curve at the midpoint of the construction line would finish the answer to my question!
I appreciate the answers and quick responses, guys! Thank you!
I confirm I was using SS3, as for the Extract Iso-Curves tool bring up the Attach Cell Reference not sure. What happens if you use the keyin ' EXTRACT ISOLINE ' rather than the tool?