我希望能够使用Revit 2017 API翻转实时部分。它将等同于我在下面的图像中看到的UI功能。
我尝试过使用内置class LineitemInfo(models.Model):
order = models.ForeignKey('Orders')
line_item_num = models.CharField(max_length=20)
item_description = models.CharField(max_length=1020, blank=True, null=True)
quantity = models.FloatField(blank=True, null=True)
unit = models.CharField(max_length=20, blank=True, null=True)
unit_price = models.FloatField(blank=True, null=True)
line_account_code = models.CharField(max_length=260, blank=True, null=True)
options = models.CharField(max_length=30, blank=True, null=True)
option_num = models.CharField(max_length=8, blank=True, null=True)
class Meta:
unique_together = (('order', 'line_item_num'),)
class Orders(models.Model):
pr_num = models.CharField(max_length=80, blank=True, null=True)
po_num = models.CharField(max_length=56, blank=True, null=True)
task_order_num = models.CharField(max_length=40, blank=True, null=True)
credit_card_id = models.CharField(max_length=40, blank=True, null=True)
date_ordered = models.DateField(blank=True, null=True)
vendor_name = models.CharField(max_length=200, blank=True, null=True)
order_description = models.CharField(max_length=400, blank=True, null=True)
predicted_order_total = models.DecimalField(max_digits=20, decimal_places=2, blank=True, null=True)
requestor = models.CharField(max_length=120, blank=True, null=True)
class Modifications(models.Model):
order = models.ForeignKey('Orders', editable=False)
mod_num = models.CharField(max_length=40, blank=True, null=True, editable=False)
mod_date = models.DateField(blank=True, null=True, editable=False)
mod_amount = models.IntegerField(blank=True, null=True, editable=False)
mod_description = models.CharField(max_length=400, blank=True, null=True, editable=False)
mod_performenddate = models.DateField(blank=True, null=True, editable=False)
optionyear = models.IntegerField(blank=True, null=True, editable=False)
class Meta:
unique_together = (('order', 'mod_num'),)
,但只会创建第二个部分标记,并带有第二个剖面视图。有什么方法可以使用Revit API实现这一目标吗?
答案 0 :(得分:1)
我在Revit API论坛上找到了我的帖子How can I flip a section using the Revit 2017 API的解决方案。事实证明,我忽略了复数ElementTransformUtils.MirrorElements
函数,我假设它与奇异ElementTransformUtils.MirrorElement
几乎完全相同,除了做多个元素镜像而不是单个镜像。复数ElementTransformUtils.MirrorElements
具有bool mirrorCopies
参数,您可以将其设置为false
,这将强制原始部分被镜像,而不是仅制作原始的镜像副本。以下是两个并排的功能签名:
void MirrorElement(
Document document,
ElementId elementToMirror,
Plane plane
);
IList<ElementId> MirrorElements(
Document document,
ICollection<ElementId> elementsToMirror,
Plane plane,
bool mirrorCopies
);
我的代码最终看起来像这样(elementsToMirror
只包含一个元素):
ElementTransformUtils.MirrorElements(document, elementsToMirror, mirrorPlane, false);
答案 1 :(得分:0)
您需要更改CropBox
对象的ViewSection
属性。 Min
和Max
属性的Z分量应该反转。