2027 Class
Changes 0
C

ProjectLocation

Description:
A representation of a specific instance and location of the current project.
Remarks:

When using shared coordinates, ProjectLocations can be used to specify specific locations for instances of a linked model. A ProjectLocation keeps track of the position of an instance in relationship to the project's SiteLocation.

By default, each Revit project contains at least one named location, called Internal. Existing ProjectLocation objects can be found by using the ProjectLocations property on the Document object. New project locations can be created by duplicating an existing project location using the Duplicate method, and modifying the location's project position.

See also SiteLocation
Inheritance Hierarchy:
System.Object
  Autodesk.Revit.DB.Element
    Autodesk.Revit.DB.Instance
      Autodesk.Revit.DB.ProjectLocation
public class ProjectLocation : Instance
public void ShowActiveProjectLocationUsage(Autodesk.Revit.DB.Document document)
{
    // Get the project location handle 
    ProjectLocation projectLocation = document.ActiveProjectLocation;

    // Show the information of current project location
    XYZ origin = new XYZ(0, 0, 0);
    ProjectPosition position = projectLocation.GetProjectPosition(origin);
    if (null == position)
    {
        throw new Exception("No project position in origin point.");
    }

    // Format the prompt string to show the message.
    String prompt = "Current project location information:\n";
    prompt += "\n\t" + "Origin point position:";
    prompt += "\n\t\t" + "Angle: " + position.Angle;
    prompt += "\n\t\t" + "East to West offset: " + position.EastWest;
    prompt += "\n\t\t" + "Elevation: " + position.Elevation;
    prompt += "\n\t\t" + "North to South offset: " + position.NorthSouth;

    // Angles are in radians when coming from Revit API, so we 
    // convert to degrees for display
    const double angleRatio = Math.PI / 180;   // angle conversion factor

    SiteLocation site = projectLocation.GetSiteLocation();
    prompt += "\n\t" + "Site location:";
    prompt += "\n\t\t" + "Latitude: " + site.Latitude / angleRatio + "��";
    prompt += "\n\t\t" + "Longitude: " + site.Longitude / angleRatio + "��";
    prompt += "\n\t\t" + "TimeZone: " + site.TimeZone;

    // Give the user some information
    TaskDialog.Show("Revit",prompt);
}
Name Return Type Description Inherited From
M ArePhasesModifiable() Boolean Returns true if the properties CreatedPhaseId and DemolishedPhaseId can be modified for this Element. (Inherited from Element ) Element
M CanBeHidden(View) Boolean Indicates if the element can be hidden in the view. (Inherited from Element ) Element
M CanBeLocked() Boolean Identifies if the element can be locked. (Inherited from Element ) Element
M CanDeleteSubelement(Subelement) Boolean Checks if given subelement can be removed from the element. (Inherited from Element ) Element
M CanHaveTypeAssigned() Boolean Identifies if the element can have a type assigned. (Inherited from Element ) Element
M ChangeTypeId(ElementId) ElementId Changes the type of the element. (Inherited from Element ) Element
M Create(Document, ElementId, String) ProjectLocation Create an instance of ProjectLocation in the document.
M DeleteEntity(Schema) Boolean Deletes the existing entity created by %schema% in the element (Inherited from Element ) Element
M DeleteSubelement(Subelement) Boolean Removes a subelement from the element. (Inherited from Element ) Element
M DeleteSubelements(IList<Subelement>) Boolean Removes the subelements from the element. (Inherited from Element ) Element
M Dispose() None (Inherited from Element ) Element
M Duplicate(String) ProjectLocation Generate a copy of this project location with the specified name.
M Equals None Determines whether the specified object is equal to the current object. (Inherited from Object ) Object
M EvaluateAllParameterValues() IList<EvaluatedParameter> Evaluates all the parameters' values of the element. (Inherited from Element ) Element
M EvaluateParameterValues(ISet<ElementId>) IList<EvaluatedParameter> Evaluate the parameters' values of the element on the given parameter ID set. (Inherited from Element ) Element
M GetDependentElements(ElementFilter) IList<ElementId> Get all elements that, from a logical point of view, are the children of this Element. (Inherited from Element ) Element
M GetEntity(Schema) Entity Returns the existing entity corresponding to the Schema if it has been saved in the Element, or an invalid entity otherwise. (Inherited from Element ) Element
M GetEntitySchemaGuids() IList<Guid> Returns the Schema guids of any Entities stored in this element. (Inherited from Element ) Element
M GetExternalFileReference() ExternalFileReference Gets information pertaining to the external file referenced by the element. (Inherited from Element ) Element
M GetExternalResourceReference(ExternalResourceType) ExternalResourceReference Gets the ExternalResourceReference associated with a specified external resource type. (Inherited from Element ) Element
M GetExternalResourceReferenceExpanded(ExternalResourceType) IList<ExternalResourceReference> Gets the collection of ExternalResourceReference associated with a specified external resource type. (Inherited from Element ) Element
M GetExternalResourceReferences() IDictionary<ExternalResourceType,ExternalResourceReference> Gets the map of the external resource references referenced by the element. (Inherited from Element ) Element
M GetExternalResourceReferencesExpanded() ExternalResourceType Gets the expanded map of the external resource references referenced by the element. (Inherited from Element ) Element
M GetGeneratingElementIds(GeometryObject) ICollection<ElementId> Returns the ids of the element(s) that generated the input geometry object. (Inherited from Element ) Element
M GetGeometryObjectFromReference(Reference) GeometryObject Retrieve one geometric primitive contained in the element given a reference. (Inherited from Element ) Element
M GetHashCode None Serves as the default hash function. (Inherited from Object ) Object
M GetMaterialArea(ElementId, Boolean) Double Gets the area of the material with the given id. (Inherited from Element ) Element
M GetMaterialIds(Boolean) ICollection<ElementId> Gets the element ids of all materials present in the element. (Inherited from Element ) Element
M GetMaterialVolume(ElementId) Double Gets the volume of the material with the given id. (Inherited from Element ) Element
M GetMonitoredLinkElementIds() IList<ElementId> Provides the link instance IDs when the element is monitoring. (Inherited from Element ) Element
M GetMonitoredLocalElementIds() IList<ElementId> Provides the local element IDs when the element is monitoring. (Inherited from Element ) Element
M GetOrderedParameters() IList<Parameter> Gets the parameters associated to the element in order. (Inherited from Element ) Element
M GetParameter(ForgeTypeId) Parameter Retrieves a parameter from the element given identifier. (Inherited from Element ) Element
M GetParameterFormatOptions(ElementId) FormatOptions Returns a FormatOptions override for the element Parameter, or a default FormatOptions if no override exists. (Inherited from Element ) Element
M GetParameters(String) IList<Parameter> Retrieves the parameters from the element via the given name. (Inherited from Element ) Element
M GetPhaseStatus(ElementId) ElementOnPhaseStatus Gets the status of a given element in the input phase (Inherited from Element ) Element
M GetProjectPosition(XYZ) ProjectPosition Gets the coordinates of a point in the ProjectLocation's coordinate system.
M GetSiteLocation() SiteLocation Gets the site location to which this project location refers.
M GetSubelements() IList<Subelement> Returns the collection of element subelements. (Inherited from Element ) Element
M GetTotalTransform() Transform Gets the total transform, which includes the true north transform for instances like import instances. (Inherited from Instance ) Instance
M GetTransform() Transform Gets the transform of the instance. (Inherited from Instance ) Instance
M GetType None Gets the Type of the current instance. (Inherited from Object ) Object
M GetTypeId() ElementId Returns the identifier of this element's type. (Inherited from Element ) Element
M GetValidTypes() ICollection<ElementId> Obtains a set of types that are valid for this element. (Inherited from Element ) Element
M HasPhases() Boolean Returns true if this Element has the properties CreatedPhaseId and DemolishedPhaseId. (Inherited from Element ) Element
M IsCreatedPhaseOrderValid(ElementId) Boolean Returns true if createdPhaseId and demolishedPhaseId are in order. (Inherited from Element ) Element
M IsDemolishedPhaseOrderValid(ElementId) Boolean Returns true if createdPhaseId and demolishedPhaseId are in order. (Inherited from Element ) Element
M IsExternalFileReference() Boolean Determines whether this Element represents an external file. (Inherited from Element ) Element
M IsHidden(View) Boolean Identifies if the element has been permanently hidden in the view. (Inherited from Element ) Element
M IsMonitoringLinkElement() Boolean Indicate whether an element is monitoring any elements in any linked models. (Inherited from Element ) Element
M IsMonitoringLocalElement() Boolean Indicate whether an element is monitoring other local elements. (Inherited from Element ) Element
M IsPhaseCreatedValid(ElementId) Boolean Returns true if createdPhaseId is an allowed value for the property CreatedPhaseId in this Element. (Inherited from Element ) Element
M IsPhaseDemolishedValid(ElementId) Boolean Returns true if demolishedPhaseId is an allowed value for the property DemolishedPhaseId in this Element. (Inherited from Element ) Element
M IsProjectLocationNameUnique(Document, String, ElementId) Boolean Verifies that there is no existing ProjectLocation with the given name belonging to the given SiteLocation.
M IsValidType(ElementId) Boolean Checks if given type is valid for this element. (Inherited from Element ) Element
M LookupParameter(String) Parameter Attempts to find a parameter on the element which has the given name. (Inherited from Element ) Element
M RefersToExternalResourceReference(ExternalResourceType) Boolean Determines whether this Element uses external resources associated with a specified external resource type. (Inherited from Element ) Element
M RefersToExternalResourceReferences() Boolean Determines whether this Element uses external resources. (Inherited from Element ) Element
M SetEntity(Entity) None Stores the entity in the element. If an Entity described by the same Schema already exists, it is overwritten. (Inherited from Element ) Element
M SetProjectPosition(XYZ, ProjectPosition) None Sets the coordinates of a point in the ProjectLocation's coordinate system.
M ToString None Returns a string that represents the current object. (Inherited from Object ) Object
Name Return Type Description Inherited From
P AssemblyInstanceId ElementId The id of the assembly instance to which the element belongs. (Inherited from Element ) Element
P BoundingBox BoundingBoxXYZ Retrieves a box that circumscribes all geometry of the element. (Inherited from Element ) Element
P Category Category Retrieves a Category object that represents the category or sub category in which the element resides. (Inherited from Element ) Element
P CreatedPhaseId ElementId Id of a Phase at which the Element was created. (Inherited from Element ) Element
P DemolishedPhaseId ElementId Id of a Phase at which the Element was demolished. (Inherited from Element ) Element
P DesignOption DesignOption Returns the design option to which the element belongs. (Inherited from Element ) Element
P Document Document Returns the Document in which the Element resides. (Inherited from Element ) Element
P Geometry GeometryElement Retrieves the geometric representation of the element. (Inherited from Element ) Element
P GroupId ElementId The id of the group to which an element belongs. (Inherited from Element ) Element
P Id ElementId A unique identifier for an Element in an Autodesk Revit project. (Inherited from Element ) Element
P IsModifiable bool Identifies if the element is modifiable. (Inherited from Element ) Element
P IsTransient bool Indicates whether an element is transient or permanent. (Inherited from Element ) Element
P IsValidObject Boolean Specifies whether the .NET object represents a valid Revit entity. (Inherited from Element ) Element
P LevelId ElementId The id of the level associated with the element. (Inherited from Element ) Element
P Location Location This property is used to find the physical location of an element within a project. (Inherited from Element ) Element
P Name string A human readable name for the Element. (Inherited from Element ) Element
P OwnerViewId ElementId The id of the view that owns the element. (Inherited from Element ) Element
P Parameter[BuiltInParameter] Parameter Retrieves a parameter from the element given a parameter id. (Inherited from Element ) Element
P Parameter[Definition] Parameter Retrieves a parameter from the element based on its definition. (Inherited from Element ) Element
P Parameter[Guid] Parameter Retrieves a parameter from the element given a GUID for a shared parameter. (Inherited from Element ) Element
P Parameters ParameterSet Retrieves a set containing all of the parameters that are contained within the element. (Inherited from Element ) Element
P ParametersMap ParameterMap Retrieves a map containing all of the parameters that are contained within the element. (Inherited from Element ) Element
P Pinned bool Identifies if the element has been pinned to prevent changes. (Inherited from Element ) Element
P UniqueId string A stable unique identifier for an element within the document. (Inherited from Element ) Element
P VersionGuid Guid Get the element version Guid. (Inherited from Element ) Element
P ViewSpecific bool Identifies if the element is owned by a view. (Inherited from Element ) Element
P WorksetId WorksetId Get Id of the Workset which owns the element. (Inherited from Element ) Element