Alaskan_Son

Members
  • Posts

    12015
  • Joined

Everything posted by Alaskan_Son

  1. We do basically the same thing and have no problems whatsoever. I would note that I only use that method when the barge overhang is under 2 ft. though.
  2. Did you ask your Nana? Or how bout maybe the local pawn shop?
  3. Hey Joe, I assume you are talking about this part of the code... ...since I'm pretty positive you understand the rest quite well. If my assumption is correct, I may be able to help as it's something that took me quite some time to fully grasp and I personally couldn't even work without anymore. If it doesn't help you, maybe someone else can take advantage of the free lesson (note that this is NOT intended as a beginner lesson). It's a lot simpler than it actually seems on the surface. First off is the .map function, which is really the key to the whole operation. In plain English, the .map function essentially tells Ruby that you want to do something to every element in your array. The brackets ({}) encapsulate the thing you want to do. The .map function is unique in that it will output the results as a modified array. Anyway, moving on... Inside those brackets are some pipes (||); and inside those pipes you are essentially just giving a generic name that represents the generic array element. I believe this generic name (as I call it) is technically called a block parameter but I could be wrong about that part. In this particular case, Gerry used the letter r, but it could have been any letter. Right or wrong, I personally just look at this like I'm assigning a temporary variable name. In fact, you're not even limited to using a single letter (as you'll see in my example below), but a single letter seems to be the typical approach. After those pipes (and still inside the brackets) is where you describe what you want to do to each element in your array. I look at this like I'm just modifying a single variable except that whatever I tell Ruby to do will happen to each and every element in the array. In this case, Gerry used the Rational method using the block parameter (r) as the argument. For all intents and purposes, Rational(r) is the same thing as r.to_r and is also the same thing as r.rationalize. Just 3 different approaches. So, as an example, I want to tell Ruby to take my list of numbers, automatically square them, and return them as a list of equations in this basic format: 6² = 36 Creating the array is something I'm sure you're familiar with. There are many ways, but here's one: my_list = [1,2,3,4,5,6] I'm sure you're also perfectly familiar with how to create a variable and how to modify that variable to get the desired format. Again, there are many ways, but here's one: temp = 1 temp.to_s + "² = " + (temp*temp).to_s > 1² = 1 Let's put it all together now by taking your array (my_list) using the .map function starting the code block ({) assigning your "temporary variable name" inside pipes (|temp|) inserting the code you want to execute on each element (temp.to_s + "² = " + (temp*temp).to_s) adding a carriage return so that the new list is generated as multi-line text (+ "\n") ending the code block (}) which will essentially result in a new array with appropriately modified elements joining each element in that new array back together as a single text string (.join) and removing the extra carriage return at the end (.strip) my_list.map{|temp| temp.to_s + "² = " + (temp*temp).to_s + "\n"}.join.strip >1² = 1 2² = 4 3² = 9 4² = 16 5² = 25 6² = 36
  4. You can also just hit Undo or Save and reopen the plan.
  5. This is a long standing bug Doug. Not sure I remember all the nuances, but I believe it's always triggered by having Auto Rebuild Roofs toggled on and Automatically Build Roof Framing toggled off. To fix, you have to group select the offending items (using Match Properties makes this quick) and then Cut/Paste Hold Position. I would also recommend turning OFF Auto Rebuild Roofs or you'll just have to keep fixing it.
  6. https://mygeodata.cloud/converter/dgn-to-autocad
  7. Don’t be afraid of deleting it all. Your plans will be unaffected.
  8. Can you elaborate on this? It should only be blank if there's nothing in the plan to populate the schedule...in which case I would expect it to be blank. You have to copy/paste however you can make really quick work of this process and of editing that particular note by familiarizing yourself with the Find Object in Plan tool and the Open Row Object(s) tool.
  9. From the documentation: Returns the result of interpreting leading characters in str as a rational. Leading whitespace and extraneous characters past the end of a valid number are ignored.
  10. Just tested quickly and it seems to remove all trailing non-numeric characters.
  11. You are correct. My bad. The rationalize method does that automatically (removes or ignores non-numeric characters). Never realized that before. I guess it makes sense. Most of the other numeric methods do that as well.
  12. Quite a few ways Joe, here's what I would do though: Remove the inch notation Break into an array of whole numbers and fractions Convert those whole numbers and fractions to rationals as Eric suggested Convert those rationals to floats Add those floats together If the string could potentially have foot values as well I would probably start by splitting into an array of 2 values using the foot notation as the pattern, multiplying that value by 12 and then adding that to the results obtained from the other half of that array (using the steps mentioned above). Does that help?
  13. The Time Log is a little tricky to work with if you're trying to pull out totals for a specific subset of entries. There are a few options that come to mind though... Delete all entries you want excluded from your calculations, get the total you need, and then hit Cancel. Copy and paste values to a spread sheet. It's not apparent on the surface, but you can select any given cell and hit Control+C (Copy) and then paste that value elsewhere. Using Contorl+C (Copy), Contorl+V (Paste), Alt+Tab (to switch between programs), and the arrow keys (to move cells), you can make pretty quick work of copy and pasting values. Export the whole Time Log and Import into a Spreadsheet to work with it there. I posted a free starter kit that you can use to make quicker work of this here...
  14. I think the closest you can get is with custom text macros set to report different text depending on either the layer_set or the settings thereof. Aside from that though, my personal opinion is that text boxes are the way to go. I find that copying and pasting text boxes with the appropriate macros results in a lot more flexibility and is a lot quicker and easier to customize and control on a room by room and situation by situation basis.
  15. I wouldn't recommend this approach at all. Text macros can be used for such a broad range of purposes and in such a broad range of ways that you could get totally lost without knowing what the specific macro(s) were for and exactly how they were intended to be used. If you jump in too quickly with both feet and without testing the waters, I think you're likely to get overwhelmed, jump back out, and never try to swim again. The best approach in my opinion is to start with the basics and then take it from there. Shoot me over an email if you're interested in discussing further.
  16. Nice! I remember the first video card I used to run Chief. It was a GeForce GT 430 and at approx. 5.7" x 2.7" may have been even a little smaller than that one. I remember thinking it was freaking awesome too.... ....I still kinda do actually.
  17. Yep. Was just typing that up too. I would recommend resetting Dialog Sizes and see if that does the trick.
  18. Just upgraded Firefox to 84.0.1 and I get the same behavior as you now. I have to change the extension manually.
  19. I'm running Windows 10.0.19041 and Firefox version 83.0
  20. Ya, I have some programmable buttons on my normal mouse as well. I don't really like them all that much though. Would much rather have them over on my left hand side where I'm already accustomed to hitting them. Besides, it would also allow me to hit and/or hold those buttons while I use the number pad, arrow keys, and/or the enter key with my right hand.
  21. My wife bought me the SpaceMouse Compact for Christmas. Its fabulous, not only for working in 3D but for working in 2D views as well. Very easy to click and draw with my right hand while I pan and zoom with my left. I will say this for anyone thinking of getting one...One of the very first things I thought after playing with it for a bit is that I wish the mouse had the Escape key, Control, Tab, and maybe Shift keys right on it. I was pretty unfamiliar with these mice and did a quick search on the other models. Sure enough, the SpaceMouse Pro has most of those keys right there on it plus a few extra programmable keys. I say all that to say this. If you're going to make the jump, the Compact version is worth the money for sure, but I would really recommend going straight for the SpaceMouse Pro. You'll be able to keep working a lot more often without having to let go to reach for the keyboard.
  22. I’d venture to guess that it varies from technician to technician. It seems like it would be in their best interest to run on multiple configurations just so they have a feel for what a broad range of users may be experiencing.
  23. I’m away from my computer now but I wonder if it has something to do with recent Windows and/or Firefox updates that one of us does or does not have.