Dopo aver aggiunto le classificazioni al database corrente, è possibile utilizzarle nei plug-in degli standard di calcolo area. In genere è possibile determinare la classificazione a partire da un vano passato ad una regola mediante l'API .NET di AutoCAD Architecture 2023 toolset esistente. Ciò può tuttavia risultare complesso, soprattutto se è sempre necessario utilizzare il nome globale delle classificazioni all'interno delle regole, in modo da poter utilizzare tutte le traduzioni dei nomi delle classificazioni. Tuttavia, la classe AecSpaceOffsetClassification consente di semplificare tale operazione.
La classe AecSpaceOffsetClassification include un metodo per ottenere il nome della classificazione globale da un oggetto vano in modo da poterlo confrontare con i nomi definiti nella tabella di stringhe delle risorse per decidere quale modalità utilizzare per l'offset contorno. Il metodo rappresenta la stringa pubblica GetClassificationName(Object Id objId). Nell'esempio seguente viene riportata una regola adiacenza di delimitazione che utilizza le classificazioni descritte nella tabella di esempio. Dal momento che la regola deve poter accedere all'oggetto AecSpaceOffsetClassification dello standard, lo standard viene passato attraverso il costruttore e assegnato al membro della regola. Ciò significa che è necessario creare la regola nell'implementazione InitRules() dello standard con un riferimento specifico allo standard corrente.
public class BoundingAdjacencyRuleGross : AecBoundingAdjacencyRule {private AecSpaceOffsetStandardISA standard; public BoundingAdjacencyRuleGross(AecSpaceOffsetStandardISA standardISA) {}standard = standardISA;} public override AecSpaceOffsetInfo Apply(ObjectId idSpace, ObjectId idObject, ObjectId idAdjSpace) {String classificationNameThis = ""; String classificationNameAdjacent = ""; if (!idSpace.IsNull) {}classificationNameThis = standard.Classification.GetClassificationName(idSpace);} if (!idAdjSpace.IsNull) {classificationNameAdjacent = standard.Classification.GetClassificationName(idAdjSpace);} if (idAdjSpace.IsNull || classificationNameAdjacent =="Exterior") {return new AecSpaceOffsetInfo(AecSpaceOffsetType.Opposite);} if (!idAdjSpace.IsNull && classificationNameThis == "Exterior") {return new AecSpaceOffsetInfo(AecSpaceOffsetType.Adjacent);} if (classificationNameThis == "Office") {return new AecSpaceOffsetInfo(AecSpaceOffsetType.Adjacent);} // for the rest return new AecSpaceOffsetInfo(AecSpaceOffsetType.Center);