ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magicsld/Intersections.vb
(Generate patch)

Comparing magicsld/Intersections.vb (file contents):
Revision 40 by bournival, Mon Aug 20 21:30:28 2007 UTC vs.
Revision 46 by bournival, Wed Aug 22 18:28:53 2007 UTC

# Line 62 | Line 62 | Module Intersections
62  
63          ' traitement des coques-coques
64          DetectionCoqueCoque()
65 <
65 >        DecouperCoqueCoque()
66          '
67  
68  
# Line 84 | Line 84 | Module Intersections
84  
85  
86      ''' <summary>
87 +    ''' Sub qui découpe les coques en fonction des informations placées dans le InterCoqueCoque
88 +    ''' </summary>
89 +    ''' <remarks></remarks>
90 +    Private Sub DecouperCoqueCoque()
91 +        Dim rayon As Double
92 +
93 +
94 +        For Each Coque As SlyFaceCoque In Commun.lst_FaceCoque
95 +            For Each interCC As InterCoqueCoque In Coque.lst_InterCoqueCoque
96 +                rayon = IIf(Coque Is interCC.sFaceCoque1, interCC.sFaceCoque2.GetEpaisseur, interCC.sFaceCoque1.GetEpaisseur)
97 +                Dim sweep As SldWorks.Body2 = interCC.GénérerSweep(interCC.sketch, rayon)
98 +                interCC.DecouperCoque(Coque, sweep)
99 +
100 +                ' reste à retrouver les faces internes.
101 +                interCC.MarquerFacesInternes(IIf(Coque Is interCC.sFaceCoque1, interCC.sFaceCoque2, interCC.sFaceCoque1), IIf(Coque Is interCC.sFaceCoque1, interCC.sFaceCoque1, interCC.sFaceCoque2))
102 +            Next
103 +        Next
104 +
105 +
106 +    End Sub
107 +
108 +    ''' <summary>
109      '''  sub qui créé une instance de la classe interCoqueCoque s'il y a une intersection de ce type
110      ''' </summary>
111      ''' <remarks></remarks>
# Line 91 | Line 113 | Module Intersections
113  
114          Dim sketch As SldWorks.Sketch = Nothing
115          Dim interCC As InterCoqueCoque = Nothing
116 +        Dim Coque1 As SlyFaceCoque, Coque2 As SlyFaceCoque
117  
118 <        For Each Coque1 As SlyFaceCoque In Commun.lst_FaceCoque
119 <            For Each coque2 As SlyFaceCoque In lst_FaceCoque
120 <
121 <                If DetectFaceFace(coque2.SwFace, Coque1.SwFace, True, sketch) Then
118 >        For i As Integer = 0 To Commun.lst_FaceCoque.Count - 2 'For Each Coque1 As SlyFaceCoque In Commun.lst_FaceCoque
119 >            Coque1 = Commun.lst_FaceCoque.Item(i)
120 >            For j As Integer = i + 1 To Commun.lst_FaceCoque.Count - 1 '  For Each coque2 As SlyFaceCoque In lst_FaceCoque
121 >                Coque2 = Commun.lst_FaceCoque.Item(j)
122 >                If DetectFaceFace(Coque2.SwFace, Coque1.SwFace, True, sketch) Then
123                      ' création de l'instance de interFace-face entre coque et coque
124  
125                      interCC = New InterCoqueCoque
126                      interCC.sFaceCoque1 = Coque1
127 <                    interCC.sFaceCoque2 = coque2
127 >                    interCC.sFaceCoque2 = Coque2
128                      interCC.FaceDeSection = False
129                      interCC.sketch = sketch
130  
131                      Coque1.lst_InterCoqueCoque.Add(interCC)
132 <                    coque2.lst_InterCoqueCoque.Add(interCC)
132 >                    Coque2.lst_InterCoqueCoque.Add(interCC)
133                  End If
134  
135 <
136 <            Next
113 <        Next
135 >            Next j
136 >        Next i
137  
138      End Sub
139  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines