2005-05-19 02:23 AM
2005-05-22 11:50 PM
Jay wrote:
I am using the Wall Accessories - Mouldings & Panels to model a wall with two different siding treatments.
2005-05-23 08:15 PM
2005-05-23 10:14 PM
!!----------!!!----------!!!----------!!!----------!! !! Moldings !!! Moldings !!! Moldings !!! Moldings !! !!----------!!!----------!!!----------!!!----------!! group "molding and panel" if ac_wall_radius<eps then !! Straight Wall If chair_prof=0 Then chair_mod=.5*chair_height If Base_prof=0 Then base_mod=base_height If crown_prof=0 Then crown_mod=crown_height muly dir !!--------------!! !! Base Molding !! !!--------------!! if base_prof>0 then if abs(base_elev)>eps then offset=base_elev transfer=ac_bot_poly gosub 9501 !! Do the polygon offset else polygon=ac_bot_poly endif if base_height<eps then resize_base=1 else resize_base=base_height/mprht[base_prof][2] endif call "Profile Extruder" parameters profile=base_prof, mat=base_mat, polyline=polygon, resize=resize_base, pos=0, over_beg=over_beg, over_end=over_end endif !!---------------!! !! Chair Molding !! !!---------------!! dim level_poly[][] for i=1 to bot_num level_poly[1]=ac_bot_poly[1] level_poly[2]=ac_bot_poly[2]+chair_elev next i if chair_prof>0 and (molding_type=value_1 or molding_type=value_2) then if chair_height<eps then resize_chair=1 else resize_chair=chair_height/mprht[chair_prof][2] endif call "Profile Extruder" parameters profile=chair_prof, mat=chair_mat, polyline=level_poly, resize=resize_chair, pos=1, over_beg=over_beg, over_end=over_end endif !!---------------!! !! Crown Molding !! !!---------------!! if crown_prof>0 and (molding_type=value_1 or molding_type=value_3) then if abs(crown_elev)>eps then offset=-crown_elev transfer=ac_top_poly gosub 9501 !! Do the polygon offset else polygon=ac_top_poly endif if crown_height<eps then resize_crown=1 else resize_crown=crown_height/mprht[crown_prof][2] endif call "Profile Extruder" parameters profile=crown_prof, mat=crown_mat, polyline=polygon, resize=resize_crown, pos=1, over_beg=over_beg, over_end=over_end endif del 1 !!-----------------!!!-----------------!!!-----------------!! !! Create Wainscot !!! Create Wainscot !!! Create Wainscot !! !!-----------------!!!-----------------!!!-----------------!! if wain_thk>eps then ! if base_prof<>0 then offset=mprht[base_prof][2]*resize_base+base_elev else offet=base_elev ! ! if abs(offset)>eps then ! transfer=ac_bot_poly ! gosub 9501 !! Do the polygon offset ! else ! polygon=ac_bot_poly ! endif ! !!!!! print "vardim1(polygon)=",vardim1(polygon) !!!!! for i=1 to vardim1(polygon) !!!!! print polygon, 15 !!!!! next i ! ! for i=1 to vardim1(polygon) ! !put polygon, 15 ! next i ! ! polygon=empty ! ! if molding_type=value_1 or molding_type=value_2 then ! if chair_prof<>0 then offset=-mprht[chair_prof][2]*resize_chair else offset=0 ! ! if offset<>0 then ! transfer=level_poly ! gosub 9501 !! Do the polygon offset ! else ! polygon=level_poly ! endif ! else ! if crown_prof<>0 then offset=-mprht[crown_prof][2]*resize_crown-crown_elev else offset=-crown_elev ! ! if abs(offset)>eps then ! transfer=ac_top_poly ! gosub 9501 !! Do the polygon offset ! else ! polygon=ac_top_poly ! endif ! endif ! !!!!! print "vardim1(polygon)=",vardim1(polygon) ! for i=vardim1(polygon) to 1 step -1 ! !put polygon, 15 ! next i ! !put use(2),-1 ! ! polygon=empty !! Empty The Polygon Array material wain_mat PUT -ref_thickness,base_elev+base_height-base_mod,15 PUT -ref_thickness,chair_elev-chair_height+chair_mod,15 PUT ac_wall_length+ref_thickness,chair_elev-chair_height+chair_mod,15 PUT ac_wall_length+ref_thickness,base_elev+base_height-base_mod,15 rotx 90 prism_ nsp/3, -wain_thk*dir, get(nsp) del 1 endif !!-------------------!!!-------------------!!!-------------------!! !! Create Wall Panel !!! Create Wall Panel !!! Create Wall Panel !! !!-------------------!!!-------------------!!!-------------------!! if wallp_thk>eps and molding_type=value_1 then ! polygon=level_poly ! for i=1 to vardim1(polygon) ! !put polygon, 15 ! next i ! polygon=empty ! ! if crown_prof<>0 then offset=-mprht[crown_prof][2]*resize_crown-crown_elev else offset=-crown_elev ! if abs(offset)>eps then ! transfer=ac_top_poly ! gosub 9501 !! Do the polygon offset ! else ! polygon=ac_top_poly ! endif ! ! for i=vardim1(polygon) to 1 step -1 ! !put polygon, 15 ! next i ! !put use(2), -1 ! ! polygon=empty material wallp_mat PUT -ref_thickness,chair_elev-chair_mod,15 PUT -ref_thickness,ac_wall_height-crown_height+crown_mod,15 PUT ac_wall_length+ref_thickness,ac_wall_height-crown_height+crown_mod,15 PUT ac_wall_length+ref_thickness,chair_elev-chair_mod,15 rotx 90 prism_ nsp/3, -wallp_thk*dir, get(nsp) del 1 endif elseHave fun!
2005-05-24 10:57 AM
Matthew wrote:Great work, Matthew!
I have attempted to fix the wainscot and wall panel by using the existing code which is very complex
-- Matthew Peychich
2005-05-24 01:04 PM
2005-05-24 06:07 PM
Matthew wrote:Matthew, dont' care, it is my mistake!
The code for curved walls is fairly thick but it does not jump to that sub routine. i didnt know that it stopped curved 3d models, ill look at it and maybe find a code fix
-- Matthew Peychich
2005-05-24 10:44 PM
2005-05-25 12:36 AM
2005-05-25 02:36 AM
Matthew wrote:This fix seems to not work for my application of the Wall Accessory.
I have attempted to fix the wainscot and wall panel by using the existing code which is very complex, and have not been able to fix the bug using the old code. I did however re-write the portion of code (commenting out the old code).......
2005-05-25 02:37 AM