Hi all, this wiki is here to share negative experiences with MDL functions and MicroStation API, in other words, native application development. Feel free to edit this text to add missing stuff (and perhaps to correct my english). I am not sure what format would be the best for this kind of wiki, so I'll start with a simple one example and in future we can change the look of it. If you have more accurate information about any issue, please correct it or contact me.
Please, share experiences with bugs.
Issue: The overlap flag gets set when the split parameters for clipping are computed. It looks like someone added an early return in 2007 when just checking for overlaps to not do the extra work of computing the split parameters once an overlap has been detected...so basically the overlap flag is now broken for lines/linestrings. Click here to read more about this issue.
First occurence: All MicroStation based Bentley products since 2007, so XM and V8i.
Last occurance: Could be fixed in V8i SS3?
Workaround: Use mdlClip_element instead.
Issue: First three points must be able to construct triangle in XY plane. Here you can read more about issue and also about more options to workaround it. Also there is mentioned the way to create custom triangulation method based on Delaunay triangulation.
First occurence: MicroStation version 8.11.5
Last occurance: N/A
Workaround: use following code instead
Issue: Confusing documentation. It is not clear what last argument (MSElementDescrCP edP) is for, because there is no argument of type TextSizeParam to be mode set. Argument tileSize returns the height and width of a single-character cell. There is no option to get another size values.
First occurence: N/A
Workaround: Use mdlTextNode_extractWide instead.