< Summary

Information
Class: FixedMathSharp.Geometry.ConeSurfaceFamilyEvent
Assembly: FixedMathSharp
File(s): /home/runner/work/FixedMathSharp/FixedMathSharp/src/FixedMathSharp/Geometry/Wide/FiniteAxis/ConeSurfaceFamilyEvent.cs
Line coverage
100%
Covered lines: 5
Uncovered lines: 0
Coverable lines: 5
Total lines: 30
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%11100%
GetContact(...)100%11100%
GetContact(...)100%11100%
TryGetWorldAnchors(...)100%11100%
TryGetWorldAnchors(...)100%11100%

File(s)

/home/runner/work/FixedMathSharp/FixedMathSharp/src/FixedMathSharp/Geometry/Wide/FiniteAxis/ConeSurfaceFamilyEvent.cs

#LineLine coverage
 1//=======================================================================
 2// ConeSurfaceFamilyEvent.cs
 3//=======================================================================
 4// MIT License, Copyright (c) 2024-present David Oravsky (mrdav30)
 5// See LICENSE file in the project root for full license information.
 6//=======================================================================
 7
 8using System;
 9using static FixedMathSharp.Geometry.ContactQuadratic;
 10
 11namespace FixedMathSharp.Geometry;
 12
 13/// <summary>Compact exact construction provenance; replay uses the original candidate and halfspace order.</summary>
 14internal readonly struct ConeSurfaceFamilyEvent
 15{
 16    internal readonly ConeSurfaceFamilyEventKind Kind;
 17    internal readonly int First, Second, Branch, Parameter;
 18    internal ConeSurfacePointLocation PointLocation { get; }
 19    internal ConeSurfaceFamilyEvent(ConeSurfaceFamilyEventKind kind, int first, int second, int branch, int parameter, C
 2990420    { Kind = kind; First = first; Second = second; Branch = branch; Parameter = parameter; PointLocation = location; }
 21    internal FixedContactAnchors GetContact(in SegmentConeSurfaceCandidate candidate, ReadOnlySpan<WideAxis3> halfspaces
 60022        SegmentConeSurfaceCandidates.GetFamilyContact(candidate, halfspaces, this);
 23    internal FixedContactAnchors GetContact(in SegmentConeSurfaceCandidate candidate, ReadOnlySpan<WideAxis3> halfspaces
 3924        in RationalSegmentInterval clip) => SegmentConeSurfaceCandidates.GetFamilyContact(candidate, halfspaces, this, c
 25    internal bool TryGetWorldAnchors(in SegmentConeSurfaceCandidate candidate, ReadOnlySpan<WideAxis3> halfspaces, out V
 15426        SegmentConeSurfaceCandidates.TryGetFamilyWorldAnchors(candidate, halfspaces, this, out first, out second);
 27    internal bool TryGetWorldAnchors(in SegmentConeSurfaceCandidate candidate, ReadOnlySpan<WideAxis3> halfspaces,
 28        in RationalSegmentInterval clip, out Vector3d first, out Vector3d second) =>
 3429        SegmentConeSurfaceCandidates.TryGetFamilyWorldAnchors(candidate, halfspaces, this, out first, out second, clip);
 30}