Oleg
Ответы в темах
-
АвторСообщения
-
Просьба поделиться командами для извлечения содержимого из Текстовых примечаний и внесения нового содержимого в имеющиеся в проекте.
Несмотря на язык приложения, получить текст можно через python таким образом (в этом примере я получил текст, который выделил):
А изменить выделенный текст на новый получилось таким способом:
Наверное, имелось ввиду инструмент Соединить из Revit?
Если да, то Почитайте эту тему
/*
* Created by SharpDevelop.
* User: Oleg
* Date: 03.02.2018
* Time: 9:54
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using Autodesk.Revit.UI;
using Autodesk.Revit.DB;
using Autodesk.Revit.UI.Selection;
using System.Collections.Generic;
using System.Linq;
namespace test
{
[Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.TransactionMode.Manual)]
[Autodesk.Revit.DB.Macros.AddInId("23D2EA92-8C3D-4105-8EC6-7C75A84F4358")]
public partial class ThisApplication
{
private void Module_Startup(object sender, EventArgs e)
{
}
private void Module_Shutdown(object sender, EventArgs e)
{
}
#region Revit Macros generated code
private void InternalStartup()
{
this.Startup += new System.EventHandler(Module_Startup);
this.Shutdown += new System.EventHandler(Module_Shutdown);
}
#endregion
public void GetBIC()
{
UIDocument uidoc = this.ActiveUIDocument;
Document doc = uidoc.Document;
var element = doc.GetElement(uidoc.Selection.PickObject(ObjectType.Element, "Выберите элемент"));
string message = "";
var e = element.Category.Id.IntegerValue;
foreach (var bic in Enum.GetValues(typeof(BuiltInCategory))) {
if (e==(int)bic)
{
message = bic.ToString();
}
};
TaskDialog.Show("Bic", message);
}
}
}
Откуда в итоговом списке взялся диапазон 8-30? И почему нет единички в единственном числе?
Потому что в списке остаются только уникальные значения, без дубликатов. Цифра “1” отсутствует в единственном числе, поскольку в списке есть ещё значения 2,3,4, которые и объединяются в запись “1-4”. С значениями 8-30 та же история. В списке присутствовали значения “8, 9, 10, “10..30”, что дает в короткой записи “8-30”
Дык в том то и дело, что цикл не успевает дойти до конца. То есть, запускается цикл, добавляется один элемент и запускается метод соединения -> и получается ошибка, поскольку нет второго элемента же. Пусть цикл завершится и пополнится список, а потом запускай метод соединения между теми элементами, что попали в список после прохода цикла.
Этот код работает только с двумя частями, видимо. У тебя в видео будто просто две стены, не взорванная на части.
Если попробовать запихнуть множество частей, то ничего не выйдет (может, потребуется проверка на принадлежность частей к одной стене, чтобы эти части не пытались сами с собой соединяться).
Но у автора этого топика был вопрос именно как соединить две части, поэтому всё работает корректно в этом случае.вот пруф)
Я стараюсь ставить такой переключатель в позицию “Значения могут изменяться по экземплярам группы”:
В этом случае, значение параметра может быть различным для каждого экземпляра группы.
Но это можно сделать не для всех типов данных(например, для типа данных Длина, Число, Целое, Да/Нет и ещё несколько – нельзя такой переключатель выставить)
-
АвторСообщения