Hi all,
I'm hoping someone might be able to suggest a simple fix to an issue I'm experiencing.
My current task is generating a dataset for viewing at 1:25,000 scale from our base mapping which is created for main viewing at 1:250 - 1:1250 when printed.
This involves a fair bit of "clash detection" for placing text at the new size / locations and spatial analysis for grouping elements with matching attribution.
During this process I've been using (very successfully under v8 XM) a lot of fence.GetContents, with fences defined from elements created in VBA, but not added to the ActiveModel. This has been working brilliantly under v8 XM, but unfortunately v8 XM won't start unless there is an "active screen" it appears, i.e. a live user - not at the Logon Screen or connected via Remote Desktop (it otherwise crashes with a DirectX initialisation error - This "build" process must run nightly on a headless machine, which unfortunately we cannot leave "logged in" with screensaver disabled.).
v8i seems happy to start without such a live session, but when running the exact same VBA code under v8i any sections which rely on fence scanning run at 1/4 - 1/5th the speed as v8 XM - timed by wrapping kernel32 to get a Millisecs counter in VBA.
Essentially I'm asking if there any additional settings introduced in v8i to control Fences and enumeration of their contents?
Or is slowness of fence enumeration a known issue?
Jon, as always... you are the man! Your expertise and knowledge continue to benefit me. Thanks for sharing this alternative spatial search method. You helped me cleanup a several thousand elements lickety-split. My deliverable thanks you! Existing surface colored much nicer now.
Christopher Johnson Technologist/Visualization Specialist CH2M HILL 135 South 84th Street, Suite 400 Milwaukee, WI 53214 Office - 414.847.0488 Mobile - 414.339.9079 www.ch2mhill.com Solutions Without Boundaries
Just to update, I installed v8i SS3 which shows the same slow down in comparison to v8XM. The search continues.
Hi Phil,
I appreciate your response and I will reply to the account issue separately (it is a relatively minor concern - I just found it a little bizarre).
With regards to unanswered questions - I would pose this as one of them. I have provided benchmark data and a ZIP file with sample data and code to test (see my posts above) - but no response has been forthcoming.
The issue had dropped of the radar as I'd been pulled of onto other projects. However I've now been asked to automate the production of some CAD data on a weekly basis and this issue is rather key to getting this done!
In brief:
oFence.DefineFromElement and oFence.GetContents combined - appear to operate at a factor of 20 times slower in v8i SS2 compared to v8XM.
I'm unable to use v8XM for this process as it must run "headless" on a VM under Windows 7. v8XM will not start under these conditions - throwing a DirectX init error.
I'd really appreciate a comment from a Bentley Rep, even if it is to say "fixed in SS3!" - atleast then I can badger our IT team to test and make SS3 available.
Regards,
Alex Proffitt
Unknown said: Yes we are SELECT contract members, I'll try and push through our Account Manager possibly.. as according to our SELECT administrator the last "helpful" technical support we used to have left Bentley.
Yes we are SELECT contract members, I'll try and push through our Account Manager possibly.. as according to our SELECT administrator the last "helpful" technical support we used to have left Bentley.
Way off topic, but there are many helpful folks from Bentley who provide technical support -- you see many of them here on this site. If you have specific issues that are not being addressed, please connect with me offline about them and they will be looked into.
Unknown said: I can' appear to change the "screen name" in the profile settings for that account.
I can' appear to change the "screen name" in the profile settings for that account.
That is correct... only site admins and our Response Center can change that (I have asked for details separately... if you would be so kind as to provide those in the thread I split off (or offline, as was also suggested), we can get this sorted very quickly).
Jon, not quite sure what happened there! I can' appear to change the "screen name" in the profile settings for that account.
I'm pushing our IT team to get SS3 available to test - I'll see if there is any difference there.
Unknown said:
Is that really your name? I suggest you apply for a new set of parents 8-)
Unknown said:Where do I submit a TR?
Be Communities provides, in general, peer-to-peer help. If you have a problem with a Bentley Systems product, such as MicroStation, then submit a formal Trouble Report (TR) to Bentley Systems.
Assuming your organisation has a SELECT contract, then your SELECT administrator should know all about submitting a TR. Otherwise, search Bentley Systems website.
Regards, Jon Summers LA Solutions
Just wanted raise the profile of this one again, could anyone with v8XM and v8i compare my results?
Another bump to hopefully get someone to try this (ZIP file in my previous post).
Jon,
Once again - thanks for your suggestion for ModelReference.Scan with the OnlyIncludeWithinRange, unfortunately it appears that this is comparing the test Range against element Range, not test Range against element Geometry.
This leaves lots of areas where labels aren't placed due to range clashes, but would be placed if compared to geometry (i.e. an L shaped linestring or large diagonal line).
Thanks,
Alex
Just a quick follow up.
Using ModelReference.Scan with IncludeOnlyWithinRange is considerably quicker, but as I stated above it limits me to using non-rotated rectangles only. This is workable is a few cases, but there are cases where I am working with rotated text. In this case a Range3d is inappropriate.
I'd really like to see if other people get the same results as I, running on v8i SS2 or SS3.