Classes and Interfaces.... Code included, what is wrong...?

Joska Paszli

New member
Joined
Sep 7, 2012
Messages
2
Programming Experience
3-5
Goal

A) read the points (X1, Y1, X2, Y2 and so on) of a shapeline and store them
B) divide the line(s) in parts of 10meter and being able to assign values to each part

I have trouble to convert the old vb6 approach with TYPES and arrays and DIMs to visual studio. So far I did this.... for GOAL A.

I have made a class, which you will find below, where I declared all variables used by using an interface..... the array containing the coordinates must be public... so it coordinates could be used in drawingroutines...

BaanShapePuntDecl

Then I made a second class which handles reading the shapefile. And suddenly it gets confusing... I will implement only the relevant parts of the code below....

Imports DMCviewer.BaanShapePuntDecl

Public class ReadBaanShapePoint
Private Sub LeesBAANASLijnen(ByVal FileNumber As Integer, ByRef Offset As Long, ByVal FileType As Integer)
Dim X1 As Double, Y1 As Double, X2 As Double, Y2 As Double
Dim iBaanShapePunt() As BaanShapePuntDecl
Dim Vertex as long

for count = 200 to 275
Vertex += 1
<< HERE X1, Y1, X2, Y2 get a value>>
iBaanShapePunt(vertex).X1lineShape = CSng(X1)
iBaanShapePunt(vertex).X2lineShape = CSng(X2)
iBaanShapePunt(vertex).Y1lineShape = CSng(Y1)
iBaanShapePunt(vertex).Y2lineShape = CSng(Y2)
next
End sub

End class


The question is, will this work, or are there any big mistakes as I assume/feel there are.....

Below the declaration interface of the lineshape points

Public Class BaanShapePuntDecl
REM ************************************************
REM * Variable for the shape axis
REM ************************************************
Implements iBaanShapePunt

Public Interface iBaanShapePunt
Property X1lineShape As Single
Property Y1lineShape As Single
Property X2lineShape As Single
Property Y2lineShape As Single
End Interface
Public arraylist As iBaanShapePunt

Sub New(ByVal a, ByVal b, ByVal c, ByVal d)
a = X1lineShape
b = Y1lineShape
c = X2lineShape
d = Y2lineShape
End Sub

Public Property X1lineShape As Single Implements iBaanShapePunt.X1lineShape
Get
Return X1lineShape
End Get
Set(ByVal value As Single)

End Set
End Property

Public Property X2lineShape As Single Implements iBaanShapePunt.X2lineShape
Get
Return X2lineShape
End Get
Set(ByVal value As Single)

End Set
End Property

Public Property Y1lineShape As Single Implements iBaanShapePunt.Y1lineShape
Get
Return Y1lineShape
End Get
Set(ByVal value As Single)

End Set
End Property

Public Property Y2lineShape As Single Implements iBaanShapePunt.Y2lineShape
Get
Return Y2lineShape
End Get
Set(ByVal value As Single)

End Set
End Property

End Class


 
Back
Top