当前正在学校项目中,我们必须编码(在vb.net中)一个程序,该程序读取具有不同点的x和y坐标的txt文件,并在每两个点之间进行距离计算,在文件上写下距离。VB.NET .txt文件操作
txt文件看起来是这样的:
596;226
506;179
412;298
583;291
...etc
,所以我的目标是计算dx和dy(坐标每次2线之间的差值),所以我得到的距离之后。
唯一的问题是我被困在如何得到dx和dy(7天现在) 例如第1和第2行的例子是(506-596),第2行是(412-506)等等对于所有与dy的点。
这里是我一直试图徒劳(大部分代码只是从网上复制/粘贴)。
Imports System.IO
Public Class Form1
Private Sub FichierTexteToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FichierTexteToolStripMenuItem.Click
OpenFileDialog1.Filter = "fichier texte| *.txt"
Dim nbLigne As Integer
nbLigne = 0
If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
Dim sr As StreamReader
sr = New StreamReader(OpenFileDialog1.FileName)
Dim x, y As String
Dim dx, dy As String
Dim txtTotal As Object
Dim ligne = sr.ReadLine()
Dim tabl() As Object
tabl = Split(ligne, ";") 'la taille de tableau represente le nombre de bloc qui ksont séparer par les separateur
txtTotal = ligne + vbCrLf
'While Not ligne Is Nothing
' ligne = sr.ReadLine
' txtTotal = txtTotal + ligne + vbCrLf
' tabl = Split(ligne, ";") 'la taille de tableau represente le nombre de bloc qui ksont séparer par les separateur
' nbLigne = nbLigne + 1
'End While
x = tabl(0)
y = tabl(1)
While Not ligne Is Nothing
ligne = sr.ReadLine
tabl = Split(ligne, ";")
dx = tabl(0) - x
dy = tabl(1) - y
End While
'test
Label2.Text = dx
Label3.Text = dy
'Label1.Text = Calculs.distance(dx, dy)
Else : Close()
End If
End Sub
End Class
谢谢你,希望有人会帮我出这个问题的:)
听说过的[勾股定理]的(https://en.wikipedia.org/维基/ Pythagorean_theorem)?法文:[Théorèmede Pythagore](https://fr.wikipedia.org/wiki/Th%C3%A9or%C3%A8me_de_Pythagore)。您将需要它来计算2-D空间中2个点之间的距离! –
这不是一个如何计算我在模块中完成论坛的问题,但我需要dx和dy。 dist = Math.Sqrt((dx)^ 2 +(dy)^ 2) – Goraby
你有''dx''和''dy''作为字符串。要做任何类型的数学与他们,你需要改变他们整数(或单打或双打) – RPM