Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    5

    Aiutatemi a trovare un errore in uno script..vi prego!!

    'Per chi mi volesse aiutare questo è uno script per generare delle frecce soltanto che in output i vertici delle frecce appaiono girati nel verso opposto invece di venire così, ---> mi vengono così, ---< dove può essere l'errore?Spero ci sia qualche anima pia che mi aiuti a superare questo problema vi sarò molto riconoscente grazie mille!!


    Function GetAngle (v1 As LineVertex, v2 As LineVertex) As Integer
    Dim bx As Integer, by As Integer, x As Double, y As Integer

    bx=v2.GetXPosition-v1.GetXPosition
    by=v2.GetYPosition-v1.GetYPosition

    If bx = 0 Then
    GetAngle = 0
    Else
    x=atn(by/bx)
    If x < 0 Then y = 270 Else y = 90
    x = x /.0174532925 + y ' conversione radianti --> gradi
    getangle = x
    End If
    End Function

    Sub SVGArrow1 (Tipo As String, angolo As Integer, x As Integer, y As Integer)

    If aParm.aDebugMode Then Print "angolo: ";angolo, "x: ";x, "y: ";y
    Pri 2,"<use xlink:href='#" & lcase(Tipo) & "'"
    Pri 2," transform='rotate(" & angolo & "," & x & "," & y & ")"
    pri 2,",translate(" & x & "," & y & ")' />"

    End Sub

    Sub SVGArrow (v As RoseItemView, Tipo As String,ByVal XOffset As Integer, ByVal YOffset As Integer, ByVal Hei As Integer, ByVal Wid As Integer)

    Dim vx As LineVertex
    Dim alfa As Integer, beta As Integer
    Dim i As Integer, x As Integer, y As Integer

    If aParm.aDebugMode Then Print " Polyline: "; Tipo

    Dim rel As relation
    Dim Rol As role
    Dim ri As roseitem
    Dim Ass As association
    Set ri = v.Item

    alfa = GetAngle (v.LineVertices.GetAt(1),v.LineVertices.GetAt(2))
    i=v.LineVertices.count
    beta = getangle (v.LineVertices.GetAt(i-1),v.LineVertices.GetAt(i))

    If aParm.adebugmode Then Print "alfa = " & alfa ; " - Beta = " & beta

    Select Case Tipo
    Case "InheritRelation"
    SVGArrow1 Tipo, beta, v.LineVertices.GetAt(i).GetXPosition,v.LineVertice s.GetAt(i).GetYPosition
    Case "Association"
    Print ri.identifyclass
    If ri.cantypecast(Ass) Then
    Set Ass = ri.typecast(Ass)
    If (Ass.role1.navigable And ass.role2.navigable) Or (Not Ass.role1.navigable And Not ass.role2.navigable) Then
    'entrambi i lati navigabili oppure no: nessuna freccia
    ElseIf Not Ass.role1.navigable And ass.role2.navigable Then
    SVGArrow1 Tipo, alfa, v.LineVertices.GetAt(1).GetXPosition,v.LineVertice s.GetAt(1).GetYPosition
    ElseIf Ass.role1.navigable And Not ass.role2.navigable Then
    SVGArrow1 Tipo, beta, v.LineVertices.GetAt(i).GetXPosition,v.LineVertice s.GetAt(i).GetYPosition
    End If
    End If
    Case Else
    SVGArrow1 Tipo, alfa, v.LineVertices.GetAt(1).GetXPosition,v.LineVertice s.GetAt(1).GetYPosition
    SVGArrow1 Tipo, beta, v.LineVertices.GetAt(i).GetXPosition,v.LineVertice s.GetAt(i).GetYPosition
    End Select

    Pri 2,"<polyline class='" & Tipo & "'"
    ind = ind + 1
    On Error Resume Next
    Pri 2," id='L" & IND & "L" & v.item.GetUniqueID & "'"

    On Error GoTo 0
    OutColors v

    x = XOffset - v.LineVertices.GetAt(1).GetXPosition
    y = YOffset - v.LineVertices.GetAt(1).GetYPosition

    Pri 2, " points=' "

    For i=1 To v.LineVertices.count
    Set vx = v.LineVertices.getAt(i)
    Pri 2, " " & vx.GetXPosition & "," & vx.GetYPosition
    Next

    Pri 2, "'"
    PriCR 2, " />"
    Pri 2, "<g />"

  2. #2
    Foga27News
    Guest
    Non posso tentare di correggerlo se non metti le definizioni dei tipi e l'uso delle tue funzioni.

  3. #3
    Originariamente inviato da Foga27News
    Non posso tentare di correggerlo se non metti le definizioni dei tipi e l'uso delle tue funzioni.
    ...e soprattuto se non usi i tag per scrivere il codice: [*CODE][*/CODE] senza *

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    5
    Quello che vi ho messo è solo un pezzo di codice di 30 pagine e nn è proprio in visual basic ma in basic e mi serve per programmare in svg nn so se conoscete,diciamo che con questo tipo di linguaggio sono enesperto so solo che ci deve essere un errore perchè questo pezzo di codice mi serve per generare frecce e mi vengono fuori così ---< invece di così ---> nn so se c'è qualcosa di sbagliato sull'impostazione nello script degli angoli o è dovuto da altro io spero proprio che mi potrete aiutare ma se posso darvi altro per farvi capire come potermi aiutare io sono a vostra disposizione.Vi ringrazio tanto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.