using Autodesk.Aec.DatabaseServices;
using Autodesk.Aec.Geometry;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.Geometry;
using Autodesk.AutoCAD.Runtime;
using System;
using System.Collections.Specialized;
using System.ComponentModel;
using System.Drawing;
namespace Autodesk.Aec.DatabaseServices
{
[Wrapper("AecDbEntity")]
public abstract class Entity : Curve, IOverrideOperation
{
protected internal Entity(IntPtr unmanagedPointer, bool autoDelete);
[Category("Miscellaneous")]
public virtual Icon TypeIcon { get; }
[Category("General")]
public string Description { get; set; }
[Category("General")]
public ProjectState ProjectState { get; set; }
[Category("General")]
public virtual string LayerKey { get; }
[Category("General")]
public ClassificationCollection Classifications { get; }
[Category("General")]
public virtual AutoCAD.DatabaseServices.ObjectId StyleId { get; set; }
[Category("Miscellaneous")]
public virtual bool SupportsBaseCurveCommands { get; }
[Category("Geometry")]
public virtual Curve BaseCurve { get; }
[Category("Miscellaneous")]
public virtual bool SupportsProfileCommands { get; }
[Category("Miscellaneous")]
public bool NeedsPromoting { get; set; }
[Category("Miscellaneous")]
public bool SwappingReferences { get; set; }
[Category("General")]
public AutomaticSpaceBoundary AutomaticallyBoundSpaces { get; set; }
[Category("Miscellaneous")]
public bool IsHighlighting { get; }
[Category("Miscellaneous")]
public virtual string DisplayName { get; }
[Category("ADVANCED")]
public OverrideCollection Overrides { get; }
public virtual void GetAutomaticallyBoundSpaces(AutoCAD.DatabaseServices.ObjectIdCollection blockRefPath, out AutomaticSpaceBoundary boundSpaces);
public virtual Profile GetBaseProfile(out Matrix3d toWcs);
public virtual void GetLocalExtents(out BoundBlock3d extents);
public virtual void GetLocalModelCachedExtents(out BoundBlock3d ext);
public virtual void GetMaterialComponents(out IntegerCollection componentIds, out StringCollection componentNames, out AutoCAD.DatabaseServices.ObjectIdCollection materialIds);
public virtual void GetMaterialLocations(out IntegerCollection locationIds, out AutoCAD.DatabaseServices.ObjectIdCollection styleIdArray);
public virtual Profile GetProfile(Plane cutPlane);
public virtual Profile GetUsageArea(Plane cutPlane);
public virtual void GetWorldExtents(out BoundBlock3d extents);
public virtual void SetAutomaticallyBoundSpaces(AutoCAD.DatabaseServices.ObjectIdCollection blockRefPath, AutomaticSpaceBoundary boundSpaces);
public virtual void SetBaseProfile(Profile profile, Matrix3d matrix);
public virtual void SetDefaultLayer();
public virtual void SetLocalExtents(BoundBlock3d extents, int flags);
public void SetLocalModelExtentsDirty();
public virtual void SetMaterialComponents(IntegerCollection componentIds, AutoCAD.DatabaseServices.ObjectIdCollection materialIds);
public virtual void SetToStandard(Database db);
public virtual void SetWorldExtents(BoundBlock3d extents);
}
}