Forgot password?

Create an account!

Forum

« back

RhinoScript – loft again

Messages

Please log in to write a message.

  • 3. bringfire (Aug 19, 2011 04.01):

    yes...any answer here would be very helpful


    amjr

  • 2. powerpp (Jun 20, 2011 12.41):

    Hi,

    I know this message is from a while ago. But I'am experiencing the same problem. Maybe your account is still active and you did find a solution? Thanks!

  • 1. moos_7 (Sep 29, 2009 00.04):

    Hey I made a script where I compare two surfaces, I checked the direction And I made startpoint, Endpoint of the loft, but still the loft is not fine. I think the only thing to change is de seam....but I really don,t kown how to do that.
    And is it possible to take a point as start/end point with closestpoint on surface?

    thank you.
    gr.
    md

    Option Explicit
    'Script written by <insert name>
    'Script copyrighted by <insert company name>
    'Script version maandag 28 september 2009 15:51:01

    Call Main()
    Sub Main()
            Dim arrobjects
            arrobjects=Rhino.getobjects("pick surfaces ",8)
            Dim i,arrmp(),arrduplicate(),arrpoint,arrparam
            '-------------------------------------------------------------
            For i=0 To UBound(arrobjects)
                    ReDim Preserve arrmp(i)
                    arrMP(i) = Rhino.SurfaceAreaCentroid(arrobjects(i))
                    Dim arrcurves9
                    If IsArray(arrMP) Then
                            Rhino.AddPoint arrMP(i)(0)
                    End If
                    '----------------------------------------------------------
                    ReDim Preserve arrduplicate(i)
                    arrduplicate(i)=Rhino.DuplicateSurfaceBorder (arrobjects(i))
                    arrcurves9=arrduplicate(i)
                   
                    If i>0 Then
                            Rhino.addline arrMP(0)(0),arrMP(1)(0)
                           
                            Dim k,arrcurves()'array for curves
                            For k=0 To UBound(arrobjects)
                                    ReDim Preserve arrcurves(k)
                                    Dim blncompare
                                    blnCompare = Rhino.CurveDirectionsMatch(arrduplicate(0)(0), arrduplicate(1)(0))
                                    '+ seam the same.
                                    If blnCompare = True Then
                                            Rhino.Print "Curves are in the same direction"
                                            Dim arrend,arrend2,arrdomain,dblparameter,arrseam
                                            Dim arrdomain2,dblparameter2,arrseam2
                                            'seam moet nog worden aangepast.
                                            Dim arrcurves6,h,addpoint
                                            'copy arrcurves 6 voor loft.
                                            arrCurves6 = Rhino.ExplodeCurves(arrcurves9)
                                            Dim count
                                            count=0
                                            Dim arrget, arrget2,arrloft, arrpointc,arrpointd
                                            arrget=Rhino.GetObject  ("pick point",1)
                                            arrget2=Rhino.GetObject ("pick point",1)
                                            arrpointc=Rhino.pointcoordinates (arrget)
                                            arrpointd=Rhino.PointCoordinates (arrget2)
                                            Rhino.addpoint (arrpointd)
                                            Rhino.addpoint (arrpointc)
                                            arrloft=Rhino.addloftsrf(Array(arrduplicate(0)(0),arrduplicate(1)(0)),arrpointc,arrpointd,2)
                                            'startpoint, closest point of centroid
                                            'endpoint, closest point of centroid
                                                           
                                    Else
                                            Rhino.Print "Curve are not in the same direction"
                                   
                                            If Rhino.IsCurve(arrduplicate(i)(0)) Then
                                                    Rhino.ReverseCurve arrduplicate(i)(0)
                                            i=i+1
                                   
                                            End If

                    End If
                           

                            Next
                   
                    End If
            Next

           
           
           
           
    End Sub
Recommend

Why are these buttons gray?