' Generate NonStopPath
Const RC_ADDRESS = "192.168.0.1"

Sub Main
	Dim rc
	Dim vntTeachPos()
	Dim vntAreaInfo()
	Dim vntMovePos
	Dim vntParam
	Dim lIndex

	dbg.ClearLog

	set rc = cao.AddController("RC", "CaoProv.DENSO.NetwoRC", "", "conn = eth:" & RC_ADDRESS)
	' ---------------------------------------
	' Initialize NonStopPath Library
	' ---------------------------------------
	call rc.Execute("InitNonStopPathLib")

	' GenerateNonStopPath Command Parameter（Pos, Area, Size, SpdRate, Coef）
	' Pos : TeachPoint Data（x, y, z, rx, ry, rz, fig, J7, J8, SpdRate, attr, ToolNum）
	redim vntTeachPos(7)

	vntTeachPos(0) = Array(300.0, 100.0, 600.0, 180.0, 0.0, 180.0, 5, 0.0, 0.0, 100 * 0.01, 1, 0)
	vntTeachPos(1) = Array(300.0, 91.0, 600.0, 180.0, 0.0, -180.0, 5, 0.0, 0.0, 100 * 0.01, 0, 0)
	vntTeachPos(2) = Array(310.0, 30.0, 600.0, 180.0, 0.0, -180.0, 5, 0.0, 0.0, 100 * 0.01, 1, 0)
	vntTeachPos(3) = Array(315.5, 24.5, 600.0, 180.0, 0.0, -180.0, 5, 0.0, 0.0, 100 * 0.01, 0, 0)
	vntTeachPos(4) = Array(300.0, 10.0, 600.0, 180.0, 0.0, 173.0, 5, 0.0, 0.0, 100 * 0.01, 1, 0)
	vntTeachPos(5) = Array(300.0, 10.0, 600.0, 180.0, 0.0, 176.0, 5, 0.0, 0.0, 100 * 0.01, 0, 0)
	vntTeachPos(6) = Array(300.0, 10.0, 600.0, 180.0, 0.0, 171.0, 5, 0.0, 0.0, 100 * 0.01, 0, 0)
	vntTeachPos(7) = Array(300.0, 10.0, 600.0, 180.0, 0.0, -180.0, 5, 0.0, 0.0, 100 * 0.01, 1, 0)

	' Area : Area Info（x, y, z, angle, J7, J8）
	redim vntAreaInfo(7)

	vntAreaInfo(0) = Array(4,4,4,4,0,0)
	vntAreaInfo(1) = Array(4,4,4,4,0,0)
	vntAreaInfo(2) = Array(4,4,4,4,0,0)
	vntAreaInfo(3) = Array(4,4,4,4,0,0)
	vntAreaInfo(4) = Array(4,4,4,4,0,0)
	vntAreaInfo(5) = Array(4,4,4,4,0,0)
	vntAreaInfo(6) = Array(4,4,4,4,0,0)
	vntAreaInfo(7) = Array(4,4,4,4,0,0)

	dbg.Output "Teach Points"
	for lIndex = 0 to Ubound(vntTeachPos)
		dbg.Output lIndex & "：" & dat.BstrFromVariant(vntTeachPos(lIndex))
	next

	' ---------------------------------------
	' Generate NonStopPath
	' ---------------------------------------
	vntMovePos = rc.Execute("GenerateNonStopPath", Array(vntTeachPos, vntAreaInfo, Ubound(vntTeachPos) + 1, 100.0 * 0.01, 0.7, 1))	
	
	dbg.Output "Move Points"
	for lIndex = 0 to Ubound(vntMovePos)
		dbg.Output lIndex & "：" & dat.BstrFromVariant(vntMovePos(lIndex))	
	next
End Sub
