UI - obvious if you recall who's developing MODO):
https://www.youtube.com/watch?v=A5Fd2jOgus4
https://www.youtube.com/watch?v=SkYwpyZNJcs
https://www.youtube.com/watch?v=pK3Q9BQSK4w
A small "bit" coming directly from the US movie industry:
https://www.youtube.com/watch?v=syZdi08_Sco&list=PLIHQjWXPloi_Q...
https://www.youtube.com/watch?v=kPj_Ey2IT9E
2. Trad AEC BIM apps (AECOSim - my favorite, Revit - no thanks, Allplan - no thanks) use RPC cells for similar tasks (an RPC cell is in fact a "DataTree" of images). In the past I did several figure animations (I'm not doing this any more: boring to the max):
http://help.archvision.com/products/bentley-microstation/getting-st...
3. Maya of course does everything (it's a unique amalgam of mesh and nurbs tools), but is totally unsuitable for AEC work.
https://www.youtube.com/watch?v=IVViMQHjjMw
So, assuming that you are in the AEC bandwagon, your options are:
a. AECOSim as the total "umbrella" for AEC matters.
b. MODO as the most innovative app out there.
c. Quest3D as the best VR app out there.…
nite a zillion of "solids" (closed polysurfaces in Rhino speech) you need a decent solid CAD app. Rhino is a surface modeller ... meaning that you should narrow your search towards the right girl.
3. Personally I work with Microstation (same 3d core engine as Siemens/NX [ParaSolids]) and CATIA/NX. The difference in speed for doing things like these ... well ... find a friend who works with any of these and experience it first hand. …
a close collaboration with them. Keep in mind that a membrane is 1% the "tissue" and 99% the nuts and bits that keep the tissue properly in place. In order to design bespoke nuts and bits you'll need a decent feature driven solid MCAD app (from CATIA/NX to Solidworks) - Rhino is NOT suitable for that type of work by any means.
The Catch 22 is that these specialized fellas they don't pay any attention to you if they don't know you ... but in order to know you ... blah, blah. …
& E & " Autoname = " & N & " _Enter")
End If
but
1) need to input 2 points somehow
2) it wrote "app. is not defined" in "out"
Where can i find examples of correct sintaxis of app.Runtimes?…
lines, dedicated MCAD apps, BIM apps, team work AND elevators as well: if you design something "variable" and then attempt to service it via a "static way" (Revit) you'll discover that you are wasting your time. I can list you a lot of WOW towers that failed on that (elevator) matter ... but this wouldn't be polite for the designers: so let's continue.
2. The other critical thing is the system that does the skin: since "liquid" is the new WOW (it shouldn't) the task of "faceting" a facade and doing it with a system that doesn't leak (in the long term), doesn't pop the panels out of the frames and it doesn't cost the GNP of Nigeria ... well ... is not that simple.
3. It's a very common mistake for some future Architect to "skip" (even mentally) "trivial" matters like these ... but if you get used on this type of thinking you'll gonna pay a heavy price (as an Architect).
So my advise is: whilst you are after "form(s)" sketch frantically the nuts and bits of that form (not to mention ... er ... hmm... the elevators, he he).
best…
can work in any node of a given hierarchy tree (loaded in your work session) by making the node "active". "Nodes" can be other things as well (like workplane, clip definitions etc).
Why to do that weird thing? Well, think any design being "flat" > meaning that all objects are placed in a single file (and in a single layer). Not that good > although the items are present you barely can handle them (because power is nothing without control, he he).
Let's go one step further: we can start classifying objects in "groups" (like a directories/files organization in any O/S). This means, in MCAD speak, creating assemblies (a void thing kinda like a directory) that contain components/entities (kinda like files).
Several steps further we end up with severely nested "arrangements" of entities (an assembly could be parent of something and child of something else).
For instance, it could be rather obvious the logical classification of a "geodetic" (so to speak) structure like this : a 40000m2 "hangar" defining some thematic park.
I mean : a void master that owns 4 equal void segment sets that own 4 "legs" that own various geodesic structural members + cables + membranes + you name it etc etc.
Each "leg" owns the concrete base (Shared) and a rather complex set of objects.
Notice that some tensile membrane "fixture" combos (see above)...act as perimeter light fixtures as well...meaning that the membrane tension plate may could be a child of a void "light" parent...or may could be a "stand alone" assembly etc etc.
These arrangements can be internal (belonging in, say, a x node within the current active file) or external (belonging in a y node within another file). If they deal with the same (topologically speaking) object they define clusters of Shared entities (or variations)- where only the view transformation matrix changes (in the simple scenario, he he). For instance the disk shown above is a Shared Assembly that owns the bolts, the plates, the tension member etc etc. Selective Instancing allows modifying some attributes without affecting the topology (i.e. the geometry).
The whole (terrible) mess is controlled by some tree like "dialog" (in Catia is "transparent") that is called Structure Browser. By controlled I mean (1) display/display mode with regard any tree member combo/selection set (assembly and/or component) in any View (2) clip state control (3) active status (for modifications/variations) (4) workplane control (5) drag and drop ownership control (6) ....
Now...what if I would chan…
lass BrepDeform Inherits GH_Component Public Reslist As New List(Of String) Public Sub New() MyBase.New("BrepDeform", "Deform", _ "移动物件的控制点" & vbCrLf & "(Move the control Point to change a object)", "SEG", "Modify")
End Sub Public Overrides ReadOnly Property ComponentGuid As System.Guid Get Return New Guid("8226e0ea-ed6b-47c2-8a24-244f044152d8") End Get End Property Protected Overrides ReadOnly Property Internal_Icon_24x24() As System.Drawing.Bitmap Get Return My.Resources.SEG_BrepDeform End Get End Property Protected Overrides Sub RegisterInputParams(ByVal pManager As GH_Component.GH_InputParamManager) ' pManager.AddTextParameter("Guid", "Id", "将要被替换的犀牛物件" & vbCrLf & "(RhinoObjects that will be replaced)", GH_ParamAccess.item) 'Dim guidParam As New Param_Guid pManager.AddParameter(New Param_Guid, "Guid", "Id", "将要被替换的犀牛物件" & vbCrLf & "(RhinoObjects that will be replaced)", GH_ParamAccess.item) pManager.AddPointParameter("ControlPoint3d", "C", "控制点的位置" & vbCrLf & "(Control Point's location)", GH_ParamAccess.item) pManager.AddPointParameter("NewPoint3d", "P", "新控制点的位置" & vbCrLf & "(New Control Point's location)", GH_ParamAccess.item) pManager.AddNumberParameter("Tolerace", "T", "输入点与物件实际控制点对比的精度" & vbCrLf & "(Tolerace for the Control Point match)", GH_ParamAccess.item, 0.1)
pManager.AddBooleanParameter("BlMove", "M", "如果是True则进行移动" & vbCrLf & "(If true Perform the Move)", GH_ParamAccess.item, False)
End Sub Protected Overrides Sub RegisterOutputParams(ByVal pManager As Kernel.GH_Component.GH_OutputParamManager) pManager.AddTextParameter("Result", "RG", "结果列表" & vbCrLf & "(Result)", GH_ParamAccess.list) End Sub Public Overrides ReadOnly Property Exposure As GH_Exposure Get Return GH_Exposure.primary End Get End Property
Protected Overrides Sub SolveInstance(ByVal DA As Kernel.IGH_DataAccess) If Banner.astrict.showmessage Then Return Dim Ids As Guid = Guid.Empty 'Dim Ids As String = String.Empty Dim tpt As Point3d = Point3d.Unset, opt As Point3d = Point3d.Unset Dim tolar As Double = 0.1 Dim blMove As Boolean = False If Not DA.GetData(0, Ids) Then Return If Not DA.GetData(1, opt) Then Return If Not DA.GetData(2, tpt) Then Return If Not DA.GetData(3, tolar) Then Return If Not DA.GetData(4, blMove) Then Return If Not blMove Then GoTo line1 Reslist.Add(Now & "_未替换!(Replace failed!)") Else Reslist.Clear() ' Grasshopper.Instances.ActiveCanvas.ModifiersEnabled = False End If
' rt.AddRange(docobjlist.Select(Function(geoobj As RhinoObject) GH_Convert.ObjRefToGeometry(New ObjRef(geoobj.Id)))) 'Private Checked(5) As Boolean, Namestr() As String = {"Point", "Curve", "Brep", "Mesh", "TextDot", "TextEntity"}
Try
Dim rh As RhinoDoc = Rhino.RhinoDoc.ActiveDoc Dim rhobj As RhinoObject = rh.Objects.Find(Ids) ' Dim rhobj As RhinoObject = rh.Objects.Find(New Guid(Ids))
Dim bobj As BrepObject = CType(rhobj, BrepObject) RhinoApp.RunScript("Cancel", False) RhinoApp.RunScript("Cancel", False) bobj.Select(True)
RhinoApp.RunScript("_SolidPtOn", False) Dim gobjs As GripObject() = bobj.GetGrips ' rh.Views.RedrawEnabled = False For Each grpobj As GripObject In gobjs
If grpobj.CurrentLocation.DistanceTo(opt) < tolar Then grpobj.Select(True) Dim CurrentPln As Plane = RhinoDoc.ActiveDoc.Views.ActiveView.ActiveViewport.ConstructionPlane Dim tropt As New Point3d(opt), trtpt As New Point3d(tpt) tropt.Transform(Transform.PlaneToPlane(Plane.WorldXY, CurrentPln)) trtpt.Transform(Transform.PlaneToPlane(Plane.WorldXY, CurrentPln))
Dim movestr As String = "_move " + String.Format("{0},{1},{2} ", tropt.X, tropt.Y, tropt.Z) + String.Format("{0},{1},{2} _Cancel _Cancel", trtpt.X, trtpt.Y, trtpt.Z) RhinoApp.RunScript(movestr, True) grpobj.Select(False) End If
Next
'RhinoApp.RunScript("Cancel", False) 'RhinoApp.RunScript("Cancel", False) '' rh.Views.RedrawEnabled = True Reslist.Add(Now & "_替换成功!(Replace Success!)") Catch ex As Exception Reslist.Add(Now & "_替换失败!(Replace failed!)" & vbCrLf & ex.Message)
End Try ' Grasshopper.Instances.ActiveCanvas.ModifiersEnabled = True
line1: DA.SetDataList(0, Reslist) End Sub
'Private Sub Testt_PingDocument(sender As IGH_DocumentObject, e As GH_PingDocumentEventArgs) Handles Me.PingDocument ' Dim Mbool = Aggregate bcbool In Checked Into cb = Any(bcbool)
' If Not Mbool Then ' Checked(0) = True ' Message = Namestr(0) ' Order = 0 ' End If 'End Sub
End Class
The picture below shows the two question.
Question One I must use data dam, or the component can't batch deal the brep. I don't know why, I have You can give me a solution to make it working normal not using the data dam
Question Two I can not uset the Button component, If I use it, the gh canvas will die with some mouse event--. I have see this problem before in this forum,but there is no solution and explain. I want to know why and How to solve it.
I don't know if I have made my question clear,if not give a message. Thank you! Thank you all.
The gh test file and 3dm test file in the upload files.
…
formance issue.
Reasons why I don't want to change the Integer parameter:
1) what about Number, and String, and Boolean, and Point, and Vector, and Line... should they also display the value? Or is the integer parameter supposed to be different from all the others?
2) what if you have multiple values inside a parameter. Should it grow to display them all? Should it grow to display only the first ten? Should it automatically switch to Icon-display?
3) would value display be a fourth kind of display type (alongside Name, Icon and App-default)?
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
Added by David Rutten at 10:25am on December 17, 2009
r)
2. Even cooler would be to make some kind of presentation preview. (GH disappears, rhino goes to fullscreen mode with somehow integrated remote panel). I like to watch apps/scripts made with processing, where sliders are really minimalistic.
3. Presentation preview may be optionally locked with password.
I realize that GH isnt processing, but this would be nice addition.
…