2線分の交差状況(整数型)
Namespace: fvalgcliAssembly: fvalgcli (in fvalgcli.dll) Version: 3.1.0.0 (3.1.0.11)
Syntax
C# |
---|
public static int fnFIE_cg_2segments_cross_status(
SGMT_T sgmt1,
SGMT_T sgmt2,
int op_flag,
ref f_cg_seg_status seg_status
) |
Visual Basic |
---|
Public Shared Function fnFIE_cg_2segments_cross_status (
sgmt1 As SGMT_T,
sgmt2 As SGMT_T,
op_flag As Integer,
ByRef seg_status As f_cg_seg_status
) As Integer |
Parameters
- sgmt1
- Type: fvalgcli..::..SGMT_T
線分1
- sgmt2
- Type: fvalgcli..::..SGMT_T
線分2
- op_flag
- Type: System..::..Int32
2線分の開・閉フラグ
- seg_status
- Type: fvalgcli..::..f_cg_seg_status%
2線分の交差状況
- F_CG_SGMT_CROSS :(内点同士で)交わる。
- F_CG_SGMT_OVERLAP :2線分が部分的に重なる。ただし、2線分は一致しない
- F_CG_SGMT_COINCIDE :2線分が完全に一致する。
- F_CG_SGMT_TOUCH :(閉線分の場合のみ) 端点が他方の内点で接する。
- F_CG_SGMT_JOINT :(閉線分の場合のみ) 端点どうしで接する。ただし、2線分は一致しない。
- F_CG_SGMT_NOT_CROSS :それ以外(共通点はまったくない)
Return Value
Type:
Int32
以下のエラーコードを返します。
エラーコード:f_err | 内容 |
---|
F_ERR_NONE | 正常終了 |
F_ERR_INVALID_PARAM | 不正なパラメータが渡された |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
Remarks
Examples
C# | Copy |
---|
using System;
using System.Collections.Generic;
using System.Text;
using fvalgcli;
namespace TC
{
public partial class FIE
{
[FvPluginExecute]
public void fnFIE_cg_2segments_cross_status()
{
int status = (int)f_err.F_ERR_NONE;
SGMT_T sgmt1;
SGMT_T sgmt2;
int op_flag = 1;
f_cg_seg_status seg_status = new f_cg_seg_status();
sgmt1.st.x = 0;
sgmt1.st.y = 0;
sgmt1.ed.x = 30;
sgmt1.ed.y = 30;
sgmt2.st.x = sgmt1.st.x;
sgmt2.st.y = sgmt1.ed.y;
sgmt2.ed.x = sgmt1.ed.x;
sgmt2.ed.y = sgmt1.st.y;
const f_cg_seg_status ans_seg_status = f_cg_seg_status.F_CG_SGMT_CROSS;
status = api.fnFIE_cg_2segments_cross_status(sgmt1, sgmt2, op_flag, ref seg_status);
Assert.IsTrue(status == (int)f_err.F_ERR_NONE, "エラーが発生しました。({0})", (f_err)status);
ConsoleOut.WriteFunctionName(":\t");
Console.Write(seg_status.ToString() + " ...");
ConsoleOut.IsTrue(ans_seg_status == seg_status);
}
}
} |
Visual Basic | Copy |
---|
Imports System.Collections.Generic
Imports System.Text
Imports fvalgcli
Public Partial Class FIE
<FvPluginExecute> _
Public Sub fnFIE_cg_2segments_cross_status()
Dim status As Integer = CInt(f_err.F_ERR_NONE)
Dim sgmt1 As SGMT_T
Dim sgmt2 As SGMT_T
Dim op_flag As Integer = 1
Dim seg_status As New f_cg_seg_status()
sgmt1.st.x = 0
sgmt1.st.y = 0
sgmt1.ed.x = 30
sgmt1.ed.y = 30
sgmt2.st.x = sgmt1.st.x
sgmt2.st.y = sgmt1.ed.y
sgmt2.ed.x = sgmt1.ed.x
sgmt2.ed.y = sgmt1.st.y
Const ans_seg_status As f_cg_seg_status = f_cg_seg_status.F_CG_SGMT_CROSS
status = api.fnFIE_cg_2segments_cross_status(sgmt1, sgmt2, op_flag, seg_status)
Assert.IsTrue(status = CInt(f_err.F_ERR_NONE), "エラーが発生しました。({0})", CType(status, f_err))
ConsoleOut.WriteFunctionName(":" & vbTab)
Console.Write(seg_status.ToString() & " ...")
ConsoleOut.IsTrue(ans_seg_status = seg_status)
End Sub
End Class |
See Also