News:

SMF - Just Installed!

Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Medeek

#1501
After giving my pricing structure and licensing system much thought over the last few weeks I've decided to keep the licensing system the way it is.

Rather than trying to force people to renew their license (with a subscription system) it makes more sense that they should only renew if the added features actually warrant them doing so.  This has always been my philosophy, however recent financial pressures have caused me to seriously reconsider this business model and waiver from my core beliefs.  I think if you offer a decent product at a fair price then the economics will sort themselves out.

With that in mind I will also be lowering the renewal costs on all plugins in order to encourage existing license holders to renew their licenses and take advantage of new features that have been recently added (Medeek Estimator, labels, construction dimensions etc...).   

In order to offset the decrease in renewal fees I will be increasing the initial cost of the plugins for new clients.

Later this month I will probably introduce a volume license (3-in-1 price) for all three plugins (mdkBIM Suite), however this will be only for new license purchases and renewals will still be handled on a per plugin basis.
#1502
As I've been working on the estimating module it has become clear to me that I need to add a menu (or module) that allows the designer to customize the output of reports.  Two key items are missing:

1.)  Company/Corporate/Designer Information:  Name, address, contact info. etc...

2.)  Project Information:  Customer Name, address, contact info, Project Title etc...

This information would be shared by all three plugins so it would be similar in some respects to the estimating module.
#1503
Version 0.9.9z - 01.11.2019
- Added door framing: header, king studs and trimmer studs to the Medeek Estimator.
- Added garage door framing: header, king studs, trimmer studs and portal frame studs to the Medeek Estimator.
- Added in-wall columns to the Medeek Estimator.




I think I am done with the Estimator for a while, at least until someone makes a specific request.

The next big thing will be the roll out of the gable walls and the end of the BETA phase of development for the plugin.
#1504
I've added doors and garage doors:



I've been working on incorporating the Ruby gem "prawn" for automatic PDF generation.  In the case of the estimator it would be very nice to not only have the CSV export option but also the ability to instantly generate a PDF document of the material list.

I realize that you can always print the HTML preview screen as PDF but the formatting never comes out quite right with this sort of thing.

I will probably add in-wall columns next and if I get ambitious this evening maybe even beam and stair assemblies.

At this point I am focusing on just getting the basic framing data in place for the various elements.  With doors and windows there is a vast amount of data that can be presented, all of this will be in good time.  Right now it is baby steps...
#1505
Version 0.9.9y - 01.09.2019
- Added cripple and corner studs to the Medeek Estimator.
- Added top and bottom plates to the Medeek Estimator.
- Added window framing: header, sill plate, king studs, trimmer studs and sill trimmer studs to the Medeek Estimator.



I shuffled things around a bit so the presentation is also more tidy both in the preview screen and in the CSV file.

Cripple studs are sorted per wall by length (shortest to longest), a shout out to Fredo6 and Eneroth for helping me tighten up the algorithm that does the sorting and enumeration.

https://forums.sketchup.com/t/sorting-a-list-of-values/84902

Windows for each wall appear below the wall's item listing, notice the different color header to help visually differentiate the sections.  I will also use a unique color for doors, garage doors, columns and SSWs within the Wall table.

If there are sub-items that need similar treatment in roof and foundation assemblies I will utilize the same system, as it seems to work reasonably well.

I have not yet added doors and garage doors, they will be next.  Windows are the guinea pigs.  There is quite a bit of data to process so the ruby transmits the data to the HTML in blocks.  Even so the speed is so fast there is hardly a lag when you hit the calculate button.  I'm curious to try this with a full house model with 100+ walls.

I haven't gotten much feedback on the layout of my CSV file, I am hoping for more input in the near future so I can make it as effective and usable as possible.
#1506
Version 0.9.9x - 01.07.2019
- License expiration date now appears in the License tab of the Global Settings when plugin is registered.
- Added (regular) wall studs to the Medeek Estimator.



Note that this addition does not yet include cripple studs, kings studs, trimmer studs and corner studs (when they differ in dimension from the common studs).

The estimating module is a bit more complicated than I originally thought so I had to rewrite a good portion of it to make it more scalable.  The HTML preview screen also needed some additional attention in that regard.  I think I've finally got it setup now where I can much more easily flesh out the rest of the building elements for all three plugins.

The CSV is generated in parallel with the HTML preview however I can also add a lot more detail into this file if requested.  There are no screen real estate limitations with spreadsheets, I can populate as many rows and columns as required. 
#1507
Version 1.2.0 - 01.06.2019
- License expiration date now appears in the License tab of the Global Settings when plugin is registered.

Estimating data for slab-on-grade foundations is now available with Version 0.9.9w of the Wall plugin.
#1508
Version 2.2.8 - 01.06.2019
- License expiration date now appears in the License tab of the Global Settings when plugin is registered.
#1509
Quickly browsing through my todo list this evening its a bit overwhelming to see that the list is still rather long even after 9 months of full time effort on the plugins.  The other two plugins almost need complete overhauls to bring them further inline with the Wall plugin (parametrics, materials, global settings etc...)

A few new items that I've contemplated over the Christmas break are:

1.)  Blocking module:  Ability to create individual studs/blocking that can be incorporated into any wall panel.
2.)  Stand Alone Columns/Posts:  Similar to the beam module I need a column module which allows the user to generate columns with all of the potential options available:  wrap, wainscoting, bases, caps etc... This is different from the existing column tools which deal specifically with in-wall columns.
3.)  Fixtures module:  I still think it would be very useful to have the ability to drop an entire (typical) bathroom into a model, with a couple clicks of the mouse.
4.)  Electrical module:  After looking through John's new book I think there may be some utility to having some tools for inserting standard outlets and switches into the wall panels.
5.)  Publishing an API or at least a catalog of the attributes libraries for each plugin so that other 3rd party plugins can be developed that interact with or are able to pull data from the Medeek models.  There is so much that can be done in this regard and since there is only one of me I can't possibly handle much more than I am already attempting to juggle. 
6.)  PDF generator:  This one may be more work than I want to get myself into at the moment but I think it might be useful to have an automated approach to producing some construction drawings for the plugin (eg. wall panel framing drawing/schematic).  This would probably cater more towards the component manufacturer/wall panel company rather than the typical residential designer or architect.
#1510
Version 0.9.9w - 01.04.2019
- Added Drip Edge and Hip & Ridge to the Medeek Estimator (common and monopitch truss assemblies).
- Added Concrete, Rebar and Anchor Bolts to the Medeek Estimator (slab-on-grade foundation assemblies).
- Made some improvements to the Medeek Estimator framework and user interface.

This recent release is a further test of the cross plugin integration.  Assemblies from the Truss and Foundation plugins are now able to be analyzed with the Medeek Estimator.

I still have a long ways to go in order to flesh out all of the various building elements and configurations but at least I have a clear path now on how to make it happen.

With regards to the CSV output, I am still a bit unsure how to best format it so that it is fully optimized for further estimating and analysis.  Any additional feedback on how best to preset the data is greatly appreciated.

This release is compatible with the following releases:

Medeek Truss:  Version 2.2.7d
Medeek Foundation:  Version 1.1.9
#1511
Version 2.2.7d - 01.04.2019
- All roof framing callouts now include the roof pitch or angle in degrees (metric templates).
- Added additional stats: (ridge cap, drip edge) for common and (drip edge) for monopitch truss roofs which can be analyzed within the Medeek Estimator (Wall Extension) module.



The new stats will become available with the next release of the Wall plugin.
#1512
Another basic piece of information of any roof is the pitch or angle in degrees for the metric side of the house.  I'm updating the framing callout for roofs to also include this information:



#1513
Version 1.1.9 - 01.03.2019
- Foundation and Footing labels option added to the General tab of the Global Settings.
- Foundation and Footing label prefixes can be customized in the General tab of the Global Settings.
- Foundation labels enabled for slab-on-grade foundations.
- When construction callouts are enabled the overall area and volume (concrete) of the foundation is displayed beneath foundation label (currently only slab-on-grade foundation assemblies have this feature available).
- Added customizable colors for lumber, PT Lumber and labels within the Materials tab of the Global Settings.
- Added additional layers for dimensions, annotations, 2d geometry, building code and engineering.

The customizable colors for the lumber (PT) will not take affect until I update the stemwall module.  Currently the color of the lumber is still hard coded into this module.

I am also working on an update to the Medeek Estimator which will then allow the user to quantify foundations as well as roof and wall assemblies.

So far I have the concrete, rebar, and anchor bolts queued up for analysis in the estimator module.  I will need to still work on adding in the insulation (foam) for the FPSF option.  The first foundation type that will be made available in the estimator is the slab-on-grade.  Once I am satisfied with the integration between the two plugins I will continue to flesh out the rest of the foundation types.

The bigger issue right now is the lack of parametrics for this plugin.  With the addition of the attribute library I am one step closer to making this happen.  There is really nothing special that needs to happen it is just a matter of pulling together the HTML menus and other tedious tasks within the Ruby code.

I apologize that it has taken this long to begin to address the parametrics issue.  As can be seen in the changelog I had a burst of activity in 2017 and then only recently began to slowly process other updates. 

http://design.medeek.com/resources/foundationpluginchangelog.html

Most of my time has been spent on the other two plugins but it is my goal this year to bring this plugin up to par with the other two.
#1514
Callouts (label, area, volume) are now working for the  Slab-on-Grade foundation type (rectangle, polygon and face):



Now I just need to add the stats tabe into the attributes and then we can also bring this data into the Medeek Estimator module.

I think it would also be useful to quantify the rebar and provide the size (dia.) and total lineal feet for each size used.  For the wires mesh I'm assuming that number would be a sqft (area) but I'm not sure whether to provide the area which includes my (inside) offset or just the total area of the slab itself. 

Anchor bolts are easy (size and qty.)

All also have the FPSF option which includes foam around the perimeter of the foundation.  I'm assuming this number would probably be the thickness and sqft (area)?

Note that the area dimension is the total area of the slab per its outer perimeter, so a garage curb will not change this number.
#1515
Off Topic / Conway's Game of Life in SketchUp
December 31, 2018, 02:42:23 AM
Conway's Game of Life or Saturday Night Fever, I'm not sure which:



If the grid is much bigger than 20x20 it really slows down, at least on my computer.

Something like this probably needs to run at a lower level than the Ruby API.

My code is below:



    ### Conway Gameboard ####

    model = Sketchup.active_model
    entities = model.active_entities
    @view = model.active_view
    @faces = []

    @cycles = 0
    ysize = 18
    xsize = 18
    blk = 12

    model.start_operation('Generate Game Board', true, false, true)

    for j in 0..(ysize-1)

       for i in 0..(xsize-1)
          i2 = i + 1
          j2 = j + 1
          pt1 = [(i*blk),(j*blk),0]
          pt2 = [(i2*blk),(j*blk),0]
          pt3 = [(i2*blk),(j2*blk),0]
          pt4 = [(i*blk),(j2*blk),0]
          face1 = entities.add_face(pt1, pt2, pt3, pt4)
         
          face1.reverse! if (rand(4)<2)

          @faces << face1
       end
    end

    model.commit_operation


    def calc_conway

       @update_array = []

       for facei in @faces
       
          adj_live_count = 0
         
          if facei.normal.samedirection? Z_AXIS
             facei_status = true
          else
             facei_status = false
          end
       
          adj_faces_list = @faces.find_all { |e| !facei.bounds.intersect(e.bounds).empty? }
          adj_faces_list.delete(facei)
         
          for face_adj in adj_faces_list
             if face_adj.normal.samedirection? Z_AXIS
                adj_live_count += 1
             end   
          end
       
          if facei_status
             # Cell is Live
             if adj_live_count < 2
                @update_array << true
             elsif adj_live_count < 4
                @update_array << false
             else
                @update_array << true
             end
          else
             # Cell is Dead
             if adj_live_count == 3
                @update_array << true
             else
                @update_array << false
             end
          end
       end

       counter = 0
       for facei in @faces
          if @update_array[counter]
             facei.reverse!
          end
          counter += 1
       end

       @view.refresh
       @cycles += 1

       if @cycles > 200
          UI.stop_timer(@conwaytimer)
       end
    end


    model.start_operation('Run Game of Life', true, false, true)

    @conwaytimer = UI.start_timer(0.02, true) { calc_conway }

    model.commit_operation