It looks as if all your objects are behind the clipping plane. If you switch the direction of your clipping plane, does that make any difference?
The following in an example to Compute HLD that uses ClippingPlanes for your reference. It work at my end with the latest release.
//HLD Sample with Clipping Planes
var _go = new GetObject();
_go.SetCommandPrompt("Select objects to test Make2D Points");
_go.GeometryFilter = ObjectType.Point | ObjectType.Surface | ObjectType.PolysrfFilter;
_go.GroupSelect = true;
_go.GetMultiple(1, 0);
if (_go.CommandResult() != Result.Success)
return _go.CommandResult();
var _obj_refs = _go.Objects();
var _view = doc.Views.ActiveView;
//Set Make2D Parameters
var _hld_params = new HiddenLineDrawingParameters
{
AbsoluteTolerance = doc.ModelAbsoluteTolerance,
IncludeTangentEdges = false,
IncludeHiddenCurves = true
};
_hld_params.SetViewport(_view.ActiveViewport);
//add objects to hld_param
foreach (var obj_ref in _obj_refs)
{
if (null == obj_ref)
continue;
var obj = obj_ref.Object();
if (null == obj)
continue;
_hld_params.AddGeometry(obj.Geometry, Transform.Identity, obj.Id);
}
//Add active clipping planes
var clipping_planes = doc.Objects.GetObjectsByType<ClippingPlaneObject>().ToArray();
foreach (var clipping_plane in clipping_planes)
{
if (clipping_plane.ClippingPlaneGeometry.ViewportIds().Contains(_view.ActiveViewport.Id))
{
var plane = clipping_plane.ClippingPlaneGeometry.Plane;
plane.Flip();
_hld_params.AddClippingPlane(plane);
}
}
//perform HLD calculation
var _hld = HiddenLineDrawing.Compute(_hld_params, true);
if (_hld != null)
{
//transform and add to doc
var flatten = Transform.PlanarProjection(Plane.WorldXY);
BoundingBox page_box = _hld.BoundingBox(true);
var delta2D = new Vector2d(0, 0);
delta2D = delta2D - new Vector2d(page_box.Min.X, page_box.Min.Y);
var delta3D = Transform.Translation(new Vector3d(delta2D.X, delta2D.Y, 0.0));
flatten = delta3D * flatten;
//add curves to doc
var h_attribs = new ObjectAttributes();
h_attribs.Name = "H";
h_attribs.ColorSource = ObjectColorSource.ColorFromObject;
h_attribs.ObjectColor = System.Drawing.Color.Cyan;
var v_attribs = new ObjectAttributes();
v_attribs.Name = "V";
var cv_attribs = new ObjectAttributes();
cv_attribs.Name = "CutV";
cv_attribs.ColorSource = ObjectColorSource.ColorFromObject;
cv_attribs.ObjectColor = System.Drawing.Color.Red;
var ch_attribs = new ObjectAttributes();
ch_attribs.Name = "CutH";
ch_attribs.ColorSource = ObjectColorSource.ColorFromObject;
ch_attribs.ObjectColor = System.Drawing.Color.Pink;
foreach (HiddenLineDrawingSegment hld_curve in _hld.Segments)
{
if (hld_curve == null || hld_curve.ParentCurve == null || hld_curve.ParentCurve.SilhouetteType == SilhouetteType.None)
continue;
var crv = hld_curve.CurveGeometry.DuplicateCurve();
if (crv != null)
{
crv.Transform(flatten);
if (hld_curve.SegmentVisibility == HiddenLineDrawingSegment.Visibility.Visible)
{
if (hld_curve.ParentCurve.SilhouetteType == SilhouetteType.SectionCut)
doc.Objects.AddCurve(crv, cv_attribs);
else
doc.Objects.AddCurve(crv, v_attribs);
}
else if (hld_curve.SegmentVisibility == HiddenLineDrawingSegment.Visibility.Hidden)
{
if (hld_curve.ParentCurve.SilhouetteType == SilhouetteType.SectionCut)
doc.Objects.AddCurve(crv, ch_attribs);
else
doc.Objects.AddCurve(crv, h_attribs);
}
}
}
//add points to doc
foreach (HiddenLineDrawingPoint hld_pt in _hld.Points)
{
if (hld_pt == null)
continue;
var pt = hld_pt.Location;
if (pt != null)
{
pt.Transform(flatten);
if (hld_pt.PointVisibility == HiddenLineDrawingPoint.Visibility.Visible)
doc.Objects.AddPoint(pt, v_attribs);
else if (hld_pt.PointVisibility == HiddenLineDrawingPoint.Visibility.Hidden)
doc.Objects.AddPoint(pt, h_attribs);
}
}
}
return Result.Success;
Here is the result using simple example where the current or active viewport is the “Perspective” viewport where the Clipping Plane is applied there.