This is Jeremy Tammik's Typepad Profile.
Join Typepad and start following Jeremy Tammik's activity
Join Now!
Already a member? Sign In
Jeremy Tammik
Switzerland
Interests: rock climbing
Recent Activity
Dear Frank, No idea whatsoever. Where did you get that from? What gave you the idea to ask me? It does indeed look like a couple of extension methods that somebody added to the Document class. It also looks a little bit old-fashioned... You do know what extension methods are, don't you? Anybody can create one, on any class, e.g. like this: http://thebuildingcoder.typepad.com/blog/2010/02/getpolygon-extension-methods.html Here is a rather more recent example: http://thebuildingcoder.typepad.com/blog/2014/12/selfilter-a-powerful-generic-selection-filter-utility.html Cheers, Jeremy.
1 reply
Dear Drew, I just noticed that a code snippet very similar to yours is also provided in the Revit API help file RevitAPI.chm description of the Segment class. Cheers, Jeremy.
Toggle Commented 5 days ago on New Revit 2013 SDK Samples at The Building Coder
1 reply
Dear Drew, Thank you very much for sharing this! It looks perfect: succinct, effective, easy. I will happily promote this little sample snippet to a main blog post to ensure that it is easy to find. Cheers, Jeremy.
Toggle Commented 5 days ago on New Revit 2013 SDK Samples at The Building Coder
1 reply
Dear Vitor, Your English is perfectly fine, no need whatsoever to apologise or worry about it. If you select elements in bulk there is no control over the selection order. If you need control over the selection order, you can implement a loop using the Revit API picking them one at a time, putting them into a sorted collection that you have total control over. Cheers, Jeremy.
Toggle Commented 5 days ago on Selection Questions at The Building Coder
1 reply
Image
Last week, I presented a stand-alone command by my colleague Katsuaki Takamizawa to retrieve wall elevation profiles. His implementation provides a nice little example of using the ExporterIFCUtils.SortCurveLoops method and differentiates between outer and inner loops. It can be used... Continue reading
Posted 5 days ago at The Building Coder
Dear Maxime, As far as I know, there are two separate UR5 patches for Revit 2015 and Revit 2015 R2. We are also expecting a UR6 for Revit 2015 very soon now, by the way, to incorporate the issue REVIT-57015 [Revit 2015 UR4 extensible storage fix prevents loading or editing family], which I believe was fixed by UR5 in Revit 2015 R2, but not in Revit 2015. Very sorry for the confusing state of affairs. Cheers, Jeremy.
1 reply
Image
I am very glad to present another post contributed by Victor Chekalin, or Виктор Чекалин, who already shared many valuable insights and in-depth Revit API research in the past: On the Russian developer forum, the user goblya asked an interesting... Continue reading
Posted 6 days ago at The Building Coder
Image
I am back from the vacation in Italy, which I enjoyed very much, especially another visit to the wonderful coast of Amalfi. To quickly share an interesting new result using the Revit API, here is a solution by Katsuaki Takamizawa... Continue reading
Posted Jan 23, 2015 at The Building Coder
Dear Atul, How is the transaction initiated? Do you have control over that? Cheers, Jeremy.
Toggle Commented Jan 23, 2015 on Auto PDF Print from Revit 2014 at The Building Coder
1 reply
Dear Andrey, When searching for answers to questions like this, it makes sense to explore the behaviour through the standard Revit product user interface first. The API normally does change anything significant, just provide programmatic access to the underlying UI functionality. I hope you have got this resolved by now? Cheers, Jeremy.
1 reply
Dear Nick, Thank you, I did! Cheers, Jeremy.
Toggle Commented Jan 23, 2015 on Vacazione in Sicilia at The Building Coder
1 reply
Dear Pjotr, Thank you! What do you have to offer in exchange? Just assuming that we get the time travel thingy working :-) Cheers, Jeremy.
Toggle Commented Jan 23, 2015 on Vacazione in Sicilia at The Building Coder
1 reply
Dear Maxime, Yes, indeed, it should be happily fixed by now in Revit 2015 R2. There is apparently still an issue with Revit 2015 UR5, though, that is currently being looked at. Cheers, Jeremy.
1 reply
Image
I'm off for a short vacation in Sicily. No computer, sleeping out. I wish you lots of fun and success with the Revit API, and myself some nice nature, good long walks, and deep relaxation. And good coffee. Ciao! Continue reading
Posted Jan 16, 2015 at The Building Coder
Dear Joel, Thank you for raising this. I fully agree, and so does the Revit development team. Therefore, here is the result: http://thebuildingcoder.typepad.com/blog/2015/01/exporterifcutils-curve-loop-sort-and-validate.html Cheers, Jeremy.
1 reply
Joel Spahn raised a pertinent question on sorting face loop edges that was kindly picked up and answered by Scott Conover and Angel Velez from the Revit development team: Question: It would be nice to know exactly what the following... Continue reading
Posted Jan 15, 2015 at The Building Coder
Here are some GitHub updates on the vA3C and RevitLookup projects, and 3D viewing in general: vA3C project going full steam ahead vA3C hacker R1 is up Rendering an element in 3D Small RevitLookup update vA3C Project Going Full Steam... Continue reading
Posted Jan 14, 2015 at The Building Coder
Dear Daniel, My pleasure, thank you for your appreciation, and sorry I could not say more. Have you ensured that you can successfully save the Revit project file manually in the user interface? Good luck resolving it! Cheers, Jeremy.
Toggle Commented Jan 14, 2015 on DevCamp Session on What's New at The Building Coder
1 reply
Dear Daniel, Nope, sorry, no idea. I created a new add-in using your code to implement the external command Execute method like this: Document doc = commandData.Application.ActiveUIDocument.Document; if( null == doc ) { message = "Active view is null."; return Result.Failed; } string fich = "C:/docsaveas.rvt"; try { doc.SaveAs( fich ); } catch( Exception e ) { string msg = e.Message; System.Diagnostics.Debug.WriteLine( "Write to " + fich + " Failed " + msg ); System.Diagnostics.Debug.WriteLine( e.Message ); } Debug.Print( doc.PathName + " saved by SaveAs" ); return Result.Succeeded; It performs flawlessly for me and creates: 01/13/2015 01:02 PM 3,620,864 docsaveas.rvt So, sorry to say, there is something else wrong in your system. SaveAs is used in many locations and situations in all kinds of Revit add-ins, including several discussed here on the blog. Here are some of the more recent examples: Family related: http://thebuildingcoder.typepad.com/blog/2014/09/modifying-saving-and-reloading-families.html http://thebuildingcoder.typepad.com/blog/2014/10/creating-a-sloped-wall.html#4 Server related: http://thebuildingcoder.typepad.com/blog/2013/12/saving-a-new-central-file-to-revit-server.html#3 A bit older: http://thebuildingcoder.typepad.com/blog/2011/05/cascaded-events-and-renaming-the-active-document.html Unfortunately, people in general have infinite creativity in finding ways to make life difficult for themselves. I do what I can to try to prevent it, but to little avail :-) I wonder what is causing this issue for you. Best of luck resolving it! Cheers, Jeremy.
Toggle Commented Jan 13, 2015 on DevCamp Session on What's New at The Building Coder
1 reply
Dear Kenneth, Thank you for the confirmation and congratulations on getting it up and running. Cheers, Jeremy.
Toggle Commented Jan 13, 2015 on RevitLookup for Revit 2015 at The Building Coder
1 reply
Dear Kenneth, RevitLookup is no longer included in the Revit SDK for the simple reason to make it easier for all users of it to add their improvements to it. It is now hosted on GitHub, at https://github.com/jeremytammik/RevitLookup The current release is 2015.0.0.4: https://github.com/jeremytammik/RevitLookup/releases/tag/2015.0.0.4 By coincidence, a new enhancement was added just today. This enhancement is not included in the latest release. To get the latest and greatest, simply clone the master branch. I hope this clarifies. Cheers, Jeremy.
Toggle Commented Jan 13, 2015 on RevitLookup for Revit 2015 at The Building Coder
1 reply
Dear Daniel, You ask "Is it a problem of context?" That makes me think... Have you implemented an external command? If not, you need to work through the Revit API getting started material, especially the DevTV and My First Revit Plugin tutorials: http://thebuildingcoder.typepad.com/blog/about-the-author.html#2 Here are some additional pointer for getting started: http://thebuildingcoder.typepad.com/blog/2015/01/cloud-accelerator-and-more-revit-stuff.html#3 Once you have worked through the tutorials, you know what you need about external commands and valid Revit API context. Have you installed the Revit SDK, and do you have the Revit API help file RevitAPI.chm at hand? That is obviously the first place to look. By the way, although you instantiate a SaveAsOptions instance and set its OverwriteExistingFile, you never make use of it. Did you intend to overwrite an existing file? If so, pass in the options to the SaveAs method. Cheers, Jeremy.
Toggle Commented Jan 12, 2015 on DevCamp Session on What's New at The Building Coder
1 reply
Image
We have an internship opening coming up, and geometrical topics like sorting face loop edges is always fun: Wanted more alive than alive: intern Sorting face loop edges Wanted More Alive than Alive: Intern Are you or someone you know... Continue reading
Posted Jan 9, 2015 at The Building Coder
Dear Namit, Sorry, I have no idea what this error is or what might be causing it. Regarding the suppression of errors and other messages, The Building Coder provides a whole list of related topics here: http://thebuildingcoder.typepad.com/blog/about-the-author.html#5.32 Cheers, Jeremy.
1 reply
Dear Fábio, Thank you for your appreciation and congratulations on the good progress you are making. You can change the type of a family instance by setting the FamilyInstance.Symbol property. That is very simple as well, actually. Cheers, Jeremy.
1 reply