ARKANCE - globální Platinum partner Autodesk ARKANCE | KONTAKT - CZ | SK | EN | DE
Registrujte se na 22. ročník konference CADfórum 2025 - 30.9. Zámek Valeč.
Přes 119.000 registrovaných u nás, celkem 1.097.000 registrovaných (CZ+EN), přes 53.000 CAD/BIM bloků. Vyzkoušejte nový přesný Inženýrský kalkulátor a aktualizovaný Generátor čarových kódů.
Registrujte se na konferenci CADfórum 2025 - automatizace navrhování
RSS kanál - CAD tipy RSS tipy
RSS diskuze

Diskuze Diskuzní fórum, poradna

?
CAD diskuze, rady, výměna zkušeností

CAD Fórum - Homepage Veřejné diskuzní fórum k CAD aplikacím - ptejte se na libovolné otázky týkající se oboru CAx, podělte se o vaše znalosti a zkušenosti s programy AutoCAD, Inventor, Revit, Fusion, 3ds Max, Vault a s dalšími CAD/BIM/PDM aplikacemi. Zaregistrujte se nebo se přihlašte a zašlete váš příspěvek do odpovídajícího fóra. Viz další informace o CAD Fóru. Nechcete se registrovat? Zeptejte se v naší Facebook poradně.
Fórum nenahrazuje technický support firmy ARKANCE (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.arkance-systems.cz
  FAQ FAQ  Prohledat fórum   Události   Registrovat Registrovat  Přihlásit Přihlásit

Téma uzavřenoVYPLNĚNÍ HODNOT PŘIDANÝCH PARAMETRŮ

 Odpovědět Odpovědět archiv
Autor
Lukáš Záruba Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 02.lis.2007
Lokalita: ČR (SČ)
Používám:
inventor 2015
Stav: Offline
Bodů: 429
Přímý odkaz na tuto zprávu Téma: VYPLNĚNÍ HODNOT PŘIDANÝCH PARAMETRŮ
    Zasláno: 15.úno.2019 v 11:34
Zdravím,

Jak mi pan Navara v předchozím dotazu ukázal, tak jsem schopen přidat jakoukoliv vlastnost nebo parametr. Teď bych potřeboval vědět jak vložím hodnoty do těchto parametrů.
Mám toto pravidlo, které mi založí UŽIVATELSKÉ PARAMETRY :
 
Sub Main()
    Dim userParams As UserParameters = GetUserParams(ThisDoc.Document)
 
    EnsureParameterMM(userParams, "DELKA", comment:="D�LKA CEL�HO PROFILU")
    EnsureParameterMM(userParams, "PU_DIRA_PRVNI_Z_LEVA", comment:="N��RT - PRVN� V �AD� OD HRANY")
    EnsureParameterMM(userParams, "PU_DIRA_POSLEDNI_Z_LEVA", comment:="N��RT - POSLEDN� V �AD� OD HRANY")
    EnsureParameterUL(userParams, "PU_DIRA_POCET", comment:="POLE - PO�ET PRVK�")
    EnsureParameterMM(userParams, "PU_DIRA_ROZTEC", comment:="POLE - ROZTE� PRVK�")
    EnsureParameterMM(userParams, "PU_DIRA_LINIE", comment:="LINIE - D�LKA CEL�HO POLE")
    EnsureParameterMM(userParams, "PU_DIRA_ROZTEC_ODSAZENI", comment:="MIN. ODSAZEN� OD HRANY ( DOPO�ET ROZD�LU)")
    EnsureParameterMM(userParams, "PU_DIRA_ROZTEC_ODSATENI_OD_KONCU", comment:="MIN. ODSAZEN� OD HRANY")
    EnsureParameterMM(userParams, "PU_DIRA_ROZTEC_DOPORUCENA", comment:="P�IBLI�N� ROZTEC")
    EnsureParameterUL(userParams, "PU_VYKRES_POCET_ROZTECI", comment:="PRO V�KRES")
    EnsureParameterMM(userParams, "PU_VYKRES_DIRA_ROZTEC", comment:="PRO V�KRES")

 
End Sub

Function GetUserParams(doc As Document) As UserParameters
    If (doc.DocumentType = DocumentTypeEnum.kAssemblyDocumentObject) Then
        Dim asm As AssemblyDocument = doc
        Return asm.ComponentDefinition.Parameters.UserParameters
    ElseIf (doc.DocumentType = DocumentTypeEnum.kPartDocumentObject) Then
        Dim prt As PartDocument = doc
        Return prt.ComponentDefinition.Parameters.UserParameters
    Else
        Throw New ArgumentOutOfRangeException("Document can be AssemblyDocument or PartDocument")
    End If
End Function
 
Function EnsureParameterMM(
                userParams As UserParameters,
                paramName As String,
                Optional defaultValue As Double = 0,
                Optional units As String = "mm",
                Optional comment As String = "") As Parameter
    Dim p As Parameter
    Try
        p = userParams(paramName)
    Catch ex As Exception
        p = userParams.AddByValue(paramName, defaultValue, units)
        p.Comment = comment
    End Try
    Return p
End Function
 
Function EnsureParameterUL(
                userParams As UserParameters,
                paramName As String,
                Optional defaultValue As Double = 0,
                Optional units As String = "ul",
                Optional comment As String = "") As Parameter
    Dim p As Parameter
    Try
        p = userParams(paramName)
    Catch ex As Exception
        p = userParams.AddByValue(paramName, defaultValue, units)
        p.Comment = comment
    End Try
    Return p
End Function

Funguje to skvěle.

Já bych ještě potřeboval ukázat jak mám do těchto přidaných parametrů vložit hodnoty, v tomto případě se nejedná jen o konkrétní čísla ale i o vzorce. Viz tabulka níže:


Připojené náhledyPřihlaste se pro zobrazení plné verze - 4903/POLE_EXCEL_2019-02-15_11-34-07.JPG


Budu rád za radu i případně všelijaké postřehy.
Zpět nahoru
Navara Zobrazit panel
ARKANCE support
ARKANCE support
Avatar
Arkance Systems

Přihlášen: 08.zář.2008
Lokalita: ČR (Pha)
Používám:
Inventor
Stav: Offline
Bodů: 1637
Přímý odkaz na tuto zprávu Zasláno: 15.úno.2019 v 11:42
Návratovou hodnotou funkce EnsureParameter je objekt typu Parameter. Doporučuju si přečíst dokumentaci k tomuto objektu.
 
Nejdůležitější jsou pro vás v tuto chvíli p.Value a p.Expression
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 3859:Jak nakreslit vyplněný kruh?
Tip 10718:Jak do výkresu přidat název pravidla rozvinu plechu?
Tip 6192:VIPRychlé poloprůhledné výplně pro zobrazení i tisk (Map, Civil).
Tip 3817:Jak rozložit bloky AutoCADu se zachováním hodnoty atributů?
Tip 4096:Proč vyplněná plocha v Revitu 7 nepřekryje kresbu v pozadí?
Tip 2004:Kde jsou uloženy styly vyplnění (původně .RPF)?


 Odpovědět Odpovědět

Přejít na fórum Oprávnění fóra Zobrazit panel



Stránka byla vygenerována za 0,563 sekund.