668 lines
39 KiB
HTML
668 lines
39 KiB
HTML
<!doctype html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>oaConstraintGroupDef</title>
|
|
<style>
|
|
body {
|
|
margin: 0;
|
|
background: #0d0b0b;
|
|
color: #f5f1ec;
|
|
font-family: Arial, Helvetica, sans-serif;
|
|
line-height: 1.5;
|
|
}
|
|
|
|
a {
|
|
color: #f2d6c2;
|
|
text-decoration: none;
|
|
}
|
|
|
|
a:hover {
|
|
text-decoration: underline;
|
|
color: #fff4ea;
|
|
}
|
|
|
|
.topbar {
|
|
border-bottom: 1px solid #6f3d2d;
|
|
background: #120f0f;
|
|
}
|
|
|
|
.topbar-inner {
|
|
max-width: 1440px;
|
|
margin: 0 auto;
|
|
padding: 14px 20px 10px;
|
|
}
|
|
|
|
.brand {
|
|
font-size: 28px;
|
|
font-weight: 700;
|
|
color: #fff8f2;
|
|
margin: 0 0 10px;
|
|
}
|
|
|
|
.tabs {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 6px;
|
|
}
|
|
|
|
.tab {
|
|
display: inline-block;
|
|
padding: 6px 12px;
|
|
border: 1px solid #6f3d2d;
|
|
background: #151111;
|
|
color: #f2d6c2;
|
|
font-size: 13px;
|
|
}
|
|
|
|
.tab.active {
|
|
background: #4b2317;
|
|
font-weight: 700;
|
|
color: #fff8f2;
|
|
}
|
|
|
|
.layout {
|
|
max-width: 1440px;
|
|
margin: 0 auto;
|
|
display: grid;
|
|
grid-template-columns: 280px minmax(0, 1fr);
|
|
gap: 28px;
|
|
padding: 24px 24px 40px;
|
|
}
|
|
|
|
.sidebar {
|
|
font-size: 13px;
|
|
}
|
|
|
|
.sidebar-panel {
|
|
border: 1px solid #6f3d2d;
|
|
margin-bottom: 16px;
|
|
background: #151111;
|
|
}
|
|
|
|
.sidebar-title {
|
|
background: #2a1713;
|
|
border-bottom: 1px solid #6f3d2d;
|
|
padding: 8px 10px;
|
|
font-weight: 700;
|
|
color: #fff1e8;
|
|
}
|
|
|
|
.sidebar-body {
|
|
padding: 8px 10px;
|
|
}
|
|
|
|
.sidebar-search {
|
|
width: 100%;
|
|
box-sizing: border-box;
|
|
padding: 6px 8px;
|
|
border: 1px solid #6f3d2d;
|
|
background: #0d0b0b;
|
|
color: #f5f1ec;
|
|
font-size: 13px;
|
|
margin-bottom: 8px;
|
|
}
|
|
|
|
.sidebar-search::placeholder {
|
|
color: #c8a995;
|
|
}
|
|
|
|
.sidebar-body ul {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.sidebar-body li.hidden {
|
|
display: none;
|
|
}
|
|
|
|
.active-link {
|
|
font-weight: 700;
|
|
color: #fff8f2;
|
|
}
|
|
|
|
.sidebar-body li + li {
|
|
margin-top: 6px;
|
|
}
|
|
|
|
.content {
|
|
min-width: 0;
|
|
}
|
|
|
|
.content-grid {
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr);
|
|
gap: 0;
|
|
align-items: start;
|
|
}
|
|
|
|
.doc {
|
|
border: 1px solid #6f3d2d;
|
|
background: #120f0f;
|
|
padding: 24px 28px 32px;
|
|
min-width: 0;
|
|
}
|
|
|
|
.toc-panel {
|
|
border: 1px solid #6f3d2d;
|
|
background: #151111;
|
|
padding: 0;
|
|
position: sticky;
|
|
top: 16px;
|
|
margin-bottom: 16px;
|
|
}
|
|
|
|
.toc-toggle {
|
|
width: 100%;
|
|
box-sizing: border-box;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 12px;
|
|
padding: 12px 14px;
|
|
border: 0;
|
|
background: #2a1713;
|
|
color: #fff1e8;
|
|
cursor: pointer;
|
|
font-size: 14px;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.toc-toggle:hover {
|
|
background: #3a1d16;
|
|
}
|
|
|
|
.toc-toggle-indicator {
|
|
font-size: 12px;
|
|
color: #d6ac96;
|
|
}
|
|
|
|
.toc-body {
|
|
display: none;
|
|
padding: 14px 16px;
|
|
}
|
|
|
|
.toc-panel.open .toc-body {
|
|
display: block;
|
|
}
|
|
|
|
.toc-panel h2 {
|
|
margin: 0 0 10px;
|
|
padding: 0;
|
|
border: 0;
|
|
font-size: 18px;
|
|
color: #fff1e8;
|
|
}
|
|
|
|
.toc-panel ul {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.toc-panel li + li {
|
|
margin-top: 8px;
|
|
}
|
|
|
|
.toc-panel a {
|
|
font-size: 13px;
|
|
line-height: 1.35;
|
|
color: #f2d6c2;
|
|
}
|
|
|
|
.crumbs {
|
|
color: #c8a995;
|
|
font-size: 13px;
|
|
margin-bottom: 14px;
|
|
}
|
|
|
|
.meta {
|
|
border: 1px solid #6f3d2d;
|
|
background: #151111;
|
|
padding: 10px 12px;
|
|
margin: 16px 0 20px;
|
|
font-size: 13px;
|
|
}
|
|
|
|
.meta div + div {
|
|
margin-top: 4px;
|
|
}
|
|
|
|
.doc h1 {
|
|
margin: 0 0 8px;
|
|
font-size: 34px;
|
|
color: #fff8f2;
|
|
}
|
|
|
|
.doc h2 {
|
|
margin: 28px 0 12px;
|
|
padding-bottom: 4px;
|
|
border-bottom: 1px solid #6f3d2d;
|
|
font-size: 22px;
|
|
color: #fff1e8;
|
|
}
|
|
|
|
.doc h3 {
|
|
margin: 22px 0 10px;
|
|
font-size: 18px;
|
|
color: #f7e1d5;
|
|
}
|
|
|
|
.doc p, .doc li {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.doc pre {
|
|
overflow-x: auto;
|
|
background: #0d0b0b;
|
|
border: 1px solid #6f3d2d;
|
|
padding: 12px 14px;
|
|
}
|
|
|
|
.doc code {
|
|
font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
|
|
font-size: 12px;
|
|
overflow-wrap: anywhere;
|
|
word-break: break-word;
|
|
color: #f7e1d5;
|
|
}
|
|
|
|
.doc table {
|
|
width: 100%;
|
|
border-collapse: collapse;
|
|
margin: 12px 0 18px;
|
|
font-size: 13px;
|
|
table-layout: fixed;
|
|
}
|
|
|
|
.doc th, .doc td {
|
|
border: 1px solid #6f3d2d;
|
|
padding: 7px 9px;
|
|
vertical-align: top;
|
|
text-align: left;
|
|
overflow-wrap: anywhere;
|
|
word-break: break-word;
|
|
}
|
|
|
|
.doc th {
|
|
background: #2a1713;
|
|
color: #fff1e8;
|
|
}
|
|
|
|
.doc blockquote {
|
|
margin: 14px 0;
|
|
padding: 8px 12px;
|
|
border-left: 4px solid #8a4a36;
|
|
background: #151111;
|
|
color: #f2d6c2;
|
|
}
|
|
|
|
.search-panel {
|
|
border: 1px solid #6f3d2d;
|
|
background: #151111;
|
|
padding: 16px 18px;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.search-panel input {
|
|
width: 100%;
|
|
box-sizing: border-box;
|
|
padding: 8px 10px;
|
|
border: 1px solid #6f3d2d;
|
|
background: #0d0b0b;
|
|
color: #f5f1ec;
|
|
font-size: 14px;
|
|
}
|
|
|
|
.search-panel input::placeholder {
|
|
color: #c8a995;
|
|
}
|
|
|
|
.search-results {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 16px 0 0;
|
|
}
|
|
|
|
.search-results li {
|
|
border-top: 1px solid #4b2317;
|
|
padding: 10px 0;
|
|
}
|
|
|
|
.search-results li.hidden {
|
|
display: none;
|
|
}
|
|
|
|
.search-results a {
|
|
font-weight: 700;
|
|
}
|
|
|
|
.search-results .module-tag {
|
|
display: inline-block;
|
|
margin-left: 8px;
|
|
padding: 2px 6px;
|
|
border: 1px solid #8a4a36;
|
|
background: #2a1713;
|
|
color: #f2d6c2;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.search-results .result-path {
|
|
margin-top: 4px;
|
|
color: #c8a995;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.footer {
|
|
max-width: 1440px;
|
|
margin: 0 auto;
|
|
padding: 0 20px 28px;
|
|
color: #b89481;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.doc > * {
|
|
min-width: 0;
|
|
}
|
|
|
|
@media (max-width: 960px) {
|
|
.layout {
|
|
grid-template-columns: 1fr;
|
|
}
|
|
|
|
.content-grid {
|
|
grid-template-columns: 1fr;
|
|
}
|
|
|
|
.toc-panel {
|
|
position: static;
|
|
}
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="topbar">
|
|
<div class="topbar-inner">
|
|
<div class="brand"><a href="../index.html">AIVI / oapy API 中文文档</a></div>
|
|
<div class="tabs"><a class="tab active" href="../base/index.html">base</a><a class="tab" href="../common/index.html">common</a><a class="tab" href="../cms/index.html">cms</a><a class="tab" href="../dm/index.html">dm</a><a class="tab" href="../design/index.html">design</a><a class="tab" href="../tech/index.html">tech</a><a class="tab" href="../wafer/index.html">wafer</a></div>
|
|
</div>
|
|
</div>
|
|
<div class="layout">
|
|
<aside class="sidebar"><div class="sidebar-panel"><div class="sidebar-title">模块</div><div class="sidebar-body"><ul><li><a href="../classes.html">全部类</a></li><li><a class="active-link" href="../base/index.html">base</a></li><li><a href="../common/index.html">common</a></li><li><a href="../cms/index.html">cms</a></li><li><a href="../dm/index.html">dm</a></li><li><a href="../design/index.html">design</a></li><li><a href="../tech/index.html">tech</a></li><li><a href="../wafer/index.html">wafer</a></li></ul></div></div><div class="sidebar-panel"><div class="sidebar-title">base 类</div><div class="sidebar-body"><input class="sidebar-search" type="search" placeholder="筛选类" data-class-filter><ul><li data-class-item data-class-name="oaabstracttype"><a href="oaAbstractType.html">oaAbstractType</a></li><li data-class-item data-class-name="oaalignmenttype"><a href="oaAlignmentType.html">oaAlignmentType</a></li><li data-class-item data-class-name="oaappdef"><a href="oaAppDef.html">oaAppDef</a></li><li data-class-item data-class-name="oaappobject"><a href="oaAppObject.html">oaAppObject</a></li><li data-class-item data-class-name="oaappobjectdef"><a href="oaAppObjectDef.html">oaAppObjectDef</a></li><li data-class-item data-class-name="oaappobjectdefcollection"><a href="oaAppObjectDefCollection.html">oaAppObjectDefCollection</a></li><li data-class-item data-class-name="oaappprop"><a href="oaAppProp.html">oaAppProp</a></li><li data-class-item data-class-name="oabasecollection"><a href="oaBaseCollection.html">oaBaseCollection</a></li><li data-class-item data-class-name="oabaseiter"><a href="oaBaseIter.html">oaBaseIter</a></li><li data-class-item data-class-name="oabaseobserver"><a href="oaBaseObserver.html">oaBaseObserver</a></li><li data-class-item data-class-name="oabasepackeddata"><a href="oaBasePackedData.html">oaBasePackedData</a></li><li data-class-item data-class-name="oabooleanappdef"><a href="oaBooleanAppDef.html">oaBooleanAppDef</a></li><li data-class-item data-class-name="oabooleanprop"><a href="oaBooleanProp.html">oaBooleanProp</a></li><li data-class-item data-class-name="oabooleanvalue"><a href="oaBooleanValue.html">oaBooleanValue</a></li><li data-class-item data-class-name="oabox"><a href="oaBox.html">oaBox</a></li><li data-class-item data-class-name="oaboxarray"><a href="oaBoxArray.html">oaBoxArray</a></li><li data-class-item data-class-name="oaboxarrayvalue"><a href="oaBoxArrayValue.html">oaBoxArrayValue</a></li><li data-class-item data-class-name="oabuildinfo"><a href="oaBuildInfo.html">oaBuildInfo</a></li><li data-class-item data-class-name="oabuildinfoarray"><a href="oaBuildInfoArray.html">oaBuildInfoArray</a></li><li data-class-item data-class-name="oabundlename"><a href="oaBundleName.html">oaBundleName</a></li><li data-class-item data-class-name="oabytearray"><a href="oaByteArray.html">oaByteArray</a></li><li data-class-item data-class-name="oacategory"><a href="oaCategory.html">oaCategory</a></li><li data-class-item data-class-name="oacdbans"><a href="oaCdbaNS.html">oaCdbaNS</a></li><li data-class-item data-class-name="oaclientsocket"><a href="oaClientSocket.html">oaClientSocket</a></li><li data-class-item data-class-name="oacompatibilityerror"><a href="oaCompatibilityError.html">oaCompatibilityError</a></li><li data-class-item data-class-name="oacomplexarray"><a href="oaComplexArray.html">oaComplexArray</a></li><li data-class-item data-class-name="oaconnectlayertype"><a href="oaConnectLayerType.html">oaConnectLayerType</a></li><li data-class-item data-class-name="oaconnectivitytype"><a href="oaConnectivityType.html">oaConnectivityType</a></li><li data-class-item data-class-name="oaconstraint"><a href="oaConstraint.html">oaConstraint</a></li><li data-class-item data-class-name="oaconstraintdef"><a href="oaConstraintDef.html">oaConstraintDef</a></li><li data-class-item data-class-name="oaconstraintgroup"><a href="oaConstraintGroup.html">oaConstraintGroup</a></li><li data-class-item data-class-name="oaconstraintgroupdef"><a class="active-link" href="oaConstraintGroupDef.html">oaConstraintGroupDef</a></li><li data-class-item data-class-name="oaconstraintgroupheader"><a href="oaConstraintGroupHeader.html">oaConstraintGroupHeader</a></li><li data-class-item data-class-name="oaconstraintgroupmem"><a href="oaConstraintGroupMem.html">oaConstraintGroupMem</a></li><li data-class-item data-class-name="oaconstraintgroupoperator"><a href="oaConstraintGroupOperator.html">oaConstraintGroupOperator</a></li><li data-class-item data-class-name="oaconstraintgrouptype"><a href="oaConstraintGroupType.html">oaConstraintGroupType</a></li><li data-class-item data-class-name="oaconstraintparam"><a href="oaConstraintParam.html">oaConstraintParam</a></li><li data-class-item data-class-name="oaconstraintparamarray"><a href="oaConstraintParamArray.html">oaConstraintParamArray</a></li><li data-class-item data-class-name="oaconstraintparamdef"><a href="oaConstraintParamDef.html">oaConstraintParamDef</a></li><li data-class-item data-class-name="oaconstraintparamtype"><a href="oaConstraintParamType.html">oaConstraintParamType</a></li><li data-class-item data-class-name="oadbtype"><a href="oaDBType.html">oaDBType</a></li><li data-class-item data-class-name="oadataappdef"><a href="oaDataAppDef.html">oaDataAppDef</a></li><li data-class-item data-class-name="oadatamodelmodtype"><a href="oaDataModelModType.html">oaDataModelModType</a></li><li data-class-item data-class-name="oadefns"><a href="oaDefNS.html">oaDefNS</a></li><li data-class-item data-class-name="oadir"><a href="oaDir.html">oaDir</a></li><li data-class-item data-class-name="oadiriter"><a href="oaDirIter.html">oaDirIter</a></li><li data-class-item data-class-name="oadistancemeasuretype"><a href="oaDistanceMeasureType.html">oaDistanceMeasureType</a></li><li data-class-item data-class-name="oadomain"><a href="oaDomain.html">oaDomain</a></li><li data-class-item data-class-name="oadoubleappdef"><a href="oaDoubleAppDef.html">oaDoubleAppDef</a></li><li data-class-item data-class-name="oadoubleprop"><a href="oaDoubleProp.html">oaDoubleProp</a></li><li data-class-item data-class-name="oadoublerangeprop"><a href="oaDoubleRangeProp.html">oaDoubleRangeProp</a></li><li data-class-item data-class-name="oadualint"><a href="oaDualInt.html">oaDualInt</a></li><li data-class-item data-class-name="oadualint1dtblvalue"><a href="oaDualInt1DTblValue.html">oaDualInt1DTblValue</a></li><li data-class-item data-class-name="oadualintarray"><a href="oaDualIntArray.html">oaDualIntArray</a></li><li data-class-item data-class-name="oadualintvalue"><a href="oaDualIntValue.html">oaDualIntValue</a></li><li data-class-item data-class-name="oaenclosedcuttype"><a href="oaEnclosedCutType.html">oaEnclosedCutType</a></li><li data-class-item data-class-name="oaenumcollection"><a href="oaEnumCollection.html">oaEnumCollection</a></li><li data-class-item data-class-name="oaenumprop"><a href="oaEnumProp.html">oaEnumProp</a></li><li data-class-item data-class-name="oaenumpropiter"><a href="oaEnumPropIter.html">oaEnumPropIter</a></li><li data-class-item data-class-name="oaerror"><a href="oaError.html">oaError</a></li><li data-class-item data-class-name="oaexception"><a href="oaException.html">oaException</a></li><li data-class-item data-class-name="oaextrapolatetype"><a href="oaExtrapolateType.html">oaExtrapolateType</a></li><li data-class-item data-class-name="oafdset"><a href="oaFDSet.html">oaFDSet</a></li><li data-class-item data-class-name="oafscomponent"><a href="oaFSComponent.html">oaFSComponent</a></li><li data-class-item data-class-name="oafeature"><a href="oaFeature.html">oaFeature</a></li><li data-class-item data-class-name="oafeaturearray"><a href="oaFeatureArray.html">oaFeatureArray</a></li><li data-class-item data-class-name="oafile"><a href="oaFile.html">oaFile</a></li><li data-class-item data-class-name="oaflatgroupdef"><a href="oaFlatGroupDef.html">oaFlatGroupDef</a></li><li data-class-item data-class-name="oafloatappdef"><a href="oaFloatAppDef.html">oaFloatAppDef</a></li><li data-class-item data-class-name="oafloatprop"><a href="oaFloatProp.html">oaFloatProp</a></li><li data-class-item data-class-name="oafloatrangeprop"><a href="oaFloatRangeProp.html">oaFloatRangeProp</a></li><li data-class-item data-class-name="oaflt1dtblvalue"><a href="oaFlt1DTblValue.html">oaFlt1DTblValue</a></li><li data-class-item data-class-name="oaflt2dtblvalue"><a href="oaFlt2DTblValue.html">oaFlt2DTblValue</a></li><li data-class-item data-class-name="oafltintflttblvalue"><a href="oaFltIntFltTblValue.html">oaFltIntFltTblValue</a></li><li data-class-item data-class-name="oafltvalue"><a href="oaFltValue.html">oaFltValue</a></li><li data-class-item data-class-name="oagateorientationtype"><a href="oaGateOrientationType.html">oaGateOrientationType</a></li><li data-class-item data-class-name="oagroup"><a href="oaGroup.html">oaGroup</a></li><li data-class-item data-class-name="oagroupdef"><a href="oaGroupDef.html">oaGroupDef</a></li><li data-class-item data-class-name="oagroupdefarray"><a href="oaGroupDefArray.html">oaGroupDefArray</a></li><li data-class-item data-class-name="oagroupdeletewhen"><a href="oaGroupDeleteWhen.html">oaGroupDeleteWhen</a></li><li data-class-item data-class-name="oagroupmember"><a href="oaGroupMember.html">oaGroupMember</a></li><li data-class-item data-class-name="oagrouppurposetype"><a href="oaGroupPurposeType.html">oaGroupPurposeType</a></li><li data-class-item data-class-name="oagrouptype"><a href="oaGroupType.html">oaGroupType</a></li><li data-class-item data-class-name="oahiergroupdef"><a href="oaHierGroupDef.html">oaHierGroupDef</a></li><li data-class-item data-class-name="oahierprop"><a href="oaHierProp.html">oaHierProp</a></li><li data-class-item data-class-name="oaint1dtblvalue"><a href="oaInt1DTblValue.html">oaInt1DTblValue</a></li><li data-class-item data-class-name="oaint2dtblvalue"><a href="oaInt2DTblValue.html">oaInt2DTblValue</a></li><li data-class-item data-class-name="oaintappdef"><a href="oaIntAppDef.html">oaIntAppDef</a></li><li data-class-item data-class-name="oaintdualintarraytblvalue"><a href="oaIntDualIntArrayTblValue.html">oaIntDualIntArrayTblValue</a></li><li data-class-item data-class-name="oaintflttblvalue"><a href="oaIntFltTblValue.html">oaIntFltTblValue</a></li><li data-class-item data-class-name="oaintprop"><a href="oaIntProp.html">oaIntProp</a></li><li data-class-item data-class-name="oaintrange"><a href="oaIntRange.html">oaIntRange</a></li><li data-class-item data-class-name="oaintrangearray"><a href="oaIntRangeArray.html">oaIntRangeArray</a></li><li data-class-item data-class-name="oaintrangearray1dtblvalue"><a href="oaIntRangeArray1DTblValue.html">oaIntRangeArray1DTblValue</a></li><li data-class-item data-class-name="oaintrangearray2dtblvalue"><a href="oaIntRangeArray2DTblValue.html">oaIntRangeArray2DTblValue</a></li><li data-class-item data-class-name="oaintrangearrayvalue"><a href="oaIntRangeArrayValue.html">oaIntRangeArrayValue</a></li><li data-class-item data-class-name="oaintrangeprop"><a href="oaIntRangeProp.html">oaIntRangeProp</a></li><li data-class-item data-class-name="oaintrangevalue"><a href="oaIntRangeValue.html">oaIntRangeValue</a></li><li data-class-item data-class-name="oaintvalue"><a href="oaIntValue.html">oaIntValue</a></li><li data-class-item data-class-name="oainterpointerappdef"><a href="oaInterPointerAppDef.html">oaInterPointerAppDef</a></li><li data-class-item data-class-name="oainterpolatetype"><a href="oaInterpolateType.html">oaInterpolateType</a></li><li data-class-item data-class-name="oaintrapointerappdef"><a href="oaIntraPointerAppDef.html">oaIntraPointerAppDef</a></li><li data-class-item data-class-name="oalayerarrayconstraintdef"><a href="oaLayerArrayConstraintDef.html">oaLayerArrayConstraintDef</a></li><li data-class-item data-class-name="oalayerarrayconstrainttype"><a href="oaLayerArrayConstraintType.html">oaLayerArrayConstraintType</a></li><li data-class-item data-class-name="oalayerconstraintdef"><a href="oaLayerConstraintDef.html">oaLayerConstraintDef</a></li><li data-class-item data-class-name="oalayerconstrainttype"><a href="oaLayerConstraintType.html">oaLayerConstraintType</a></li><li data-class-item data-class-name="oalayerpairconstraintdef"><a href="oaLayerPairConstraintDef.html">oaLayerPairConstraintDef</a></li><li data-class-item data-class-name="oalayerpairconstrainttype"><a href="oaLayerPairConstraintType.html">oaLayerPairConstraintType</a></li><li data-class-item data-class-name="oalefns"><a href="oaLefNS.html">oaLefNS</a></li><li data-class-item data-class-name="oamanagedtype"><a href="oaManagedType.html">oaManagedType</a></li><li data-class-item data-class-name="oamanagedtypearray"><a href="oaManagedTypeArray.html">oaManagedTypeArray</a></li><li data-class-item data-class-name="oamapfile"><a href="oaMapFile.html">oaMapFile</a></li><li data-class-item data-class-name="oamapfilewindow"><a href="oaMapFileWindow.html">oaMapFileWindow</a></li><li data-class-item data-class-name="oamapwindow"><a href="oaMapWindow.html">oaMapWindow</a></li><li data-class-item data-class-name="oamemory"><a href="oaMemory.html">oaMemory</a></li><li data-class-item data-class-name="oamemoryerror"><a href="oaMemoryError.html">oaMemoryError</a></li><li data-class-item data-class-name="oaname"><a href="oaName.html">oaName</a></li><li data-class-item data-class-name="oanamebase"><a href="oaNameBase.html">oaNameBase</a></li><li data-class-item data-class-name="oanamemem"><a href="oaNameMem.html">oaNameMem</a></li><li data-class-item data-class-name="oanamespace"><a href="oaNameSpace.html">oaNameSpace</a></li><li data-class-item data-class-name="oanametype"><a href="oaNameType.html">oaNameType</a></li><li data-class-item data-class-name="oanativens"><a href="oaNativeNS.html">oaNativeNS</a></li><li data-class-item data-class-name="oaneighborlayermetaltype"><a href="oaNeighborLayerMetalType.html">oaNeighborLayerMetalType</a></li><li data-class-item data-class-name="oaoserror"><a href="oaOSError.html">oaOSError</a></li><li data-class-item data-class-name="oaobject"><a href="oaObject.html">oaObject</a></li><li data-class-item data-class-name="oaobjectarray"><a href="oaObjectArray.html">oaObjectArray</a></li><li data-class-item data-class-name="oaorient"><a href="oaOrient.html">oaOrient</a></li><li data-class-item data-class-name="oapackeddata"><a href="oaPackedData.html">oaPackedData</a></li><li data-class-item data-class-name="oaparam"><a href="oaParam.html">oaParam</a></li><li data-class-item data-class-name="oaparamarray"><a href="oaParamArray.html">oaParamArray</a></li><li data-class-item data-class-name="oaparamtype"><a href="oaParamType.html">oaParamType</a></li><li data-class-item data-class-name="oapoint"><a href="oaPoint.html">oaPoint</a></li><li data-class-item data-class-name="oapointarray"><a href="oaPointArray.html">oaPointArray</a></li><li data-class-item data-class-name="oaprop"><a href="oaProp.html">oaProp</a></li><li data-class-item data-class-name="oarange"><a href="oaRange.html">oaRange</a></li><li data-class-item data-class-name="oarangebase"><a href="oaRangeBase.html">oaRangeBase</a></li><li data-class-item data-class-name="oarangetype"><a href="oaRangeType.html">oaRangeType</a></li><li data-class-item data-class-name="oascalarname"><a href="oaScalarName.html">oaScalarName</a></li><li data-class-item data-class-name="oasegment"><a href="oaSegment.html">oaSegment</a></li><li data-class-item data-class-name="oasemaphore"><a href="oaSemaphore.html">oaSemaphore</a></li><li data-class-item data-class-name="oaserversocket"><a href="oaServerSocket.html">oaServerSocket</a></li><li data-class-item data-class-name="oasession"><a href="oaSession.html">oaSession</a></li><li data-class-item data-class-name="oasessionobject"><a href="oaSessionObject.html">oaSessionObject</a></li><li data-class-item data-class-name="oashapeangletype"><a href="oaShapeAngleType.html">oaShapeAngleType</a></li><li data-class-item data-class-name="oasimpleconstraint"><a href="oaSimpleConstraint.html">oaSimpleConstraint</a></li><li data-class-item data-class-name="oasimpleconstraintdef"><a href="oaSimpleConstraintDef.html">oaSimpleConstraintDef</a></li><li data-class-item data-class-name="oasimpleconstrainttype"><a href="oaSimpleConstraintType.html">oaSimpleConstraintType</a></li><li data-class-item data-class-name="oasimplename"><a href="oaSimpleName.html">oaSimpleName</a></li><li data-class-item data-class-name="oasocket"><a href="oaSocket.html">oaSocket</a></li><li data-class-item data-class-name="oasocketerror"><a href="oaSocketError.html">oaSocketError</a></li><li data-class-item data-class-name="oaspacingdirectiontype"><a href="oaSpacingDirectionType.html">oaSpacingDirectionType</a></li><li data-class-item data-class-name="oaspacingmeasuretype"><a href="oaSpacingMeasureType.html">oaSpacingMeasureType</a></li><li data-class-item data-class-name="oaspacingtype"><a href="oaSpacingType.html">oaSpacingType</a></li><li data-class-item data-class-name="oaspefns"><a href="oaSpefNS.html">oaSpefNS</a></li><li data-class-item data-class-name="oaspfns"><a href="oaSpfNS.html">oaSpfNS</a></li><li data-class-item data-class-name="oaspicens"><a href="oaSpiceNS.html">oaSpiceNS</a></li><li data-class-item data-class-name="oastring"><a href="oaString.html">oaString</a></li><li data-class-item data-class-name="oastringappdef"><a href="oaStringAppDef.html">oaStringAppDef</a></li><li data-class-item data-class-name="oastringarray"><a href="oaStringArray.html">oaStringArray</a></li><li data-class-item data-class-name="oastringprop"><a href="oaStringProp.html">oaStringProp</a></li><li data-class-item data-class-name="oastringvalue"><a href="oaStringValue.html">oaStringValue</a></li><li data-class-item data-class-name="oasubset"><a href="oaSubset.html">oaSubset</a></li><li data-class-item data-class-name="oasystemtime"><a href="oaSystemTime.html">oaSystemTime</a></li><li data-class-item data-class-name="oathreadusemodel"><a href="oaThreadUseModel.html">oaThreadUseModel</a></li><li data-class-item data-class-name="oatimeappdef"><a href="oaTimeAppDef.html">oaTimeAppDef</a></li><li data-class-item data-class-name="oatimeprop"><a href="oaTimeProp.html">oaTimeProp</a></li><li data-class-item data-class-name="oatimerangeprop"><a href="oaTimeRangeProp.html">oaTimeRangeProp</a></li><li data-class-item data-class-name="oatimestamp"><a href="oaTimeStamp.html">oaTimeStamp</a></li><li data-class-item data-class-name="oatimer"><a href="oaTimer.html">oaTimer</a></li><li data-class-item data-class-name="oatransform"><a href="oaTransform.html">oaTransform</a></li><li data-class-item data-class-name="oatype"><a href="oaType.html">oaType</a></li><li data-class-item data-class-name="oauint8range"><a href="oaUInt8Range.html">oaUInt8Range</a></li><li data-class-item data-class-name="oauint8rangevalue"><a href="oaUInt8RangeValue.html">oaUInt8RangeValue</a></li><li data-class-item data-class-name="oauint8value"><a href="oaUInt8Value.html">oaUInt8Value</a></li><li data-class-item data-class-name="oaunixns"><a href="oaUnixNS.html">oaUnixNS</a></li><li data-class-item data-class-name="oavalue"><a href="oaValue.html">oaValue</a></li><li data-class-item data-class-name="oavaluearray"><a href="oaValueArray.html">oaValueArray</a></li><li data-class-item data-class-name="oavaluearrayvalue"><a href="oaValueArrayValue.html">oaValueArrayValue</a></li><li data-class-item data-class-name="oavardataappdef"><a href="oaVarDataAppDef.html">oaVarDataAppDef</a></li><li data-class-item data-class-name="oavector"><a href="oaVector.html">oaVector</a></li><li data-class-item data-class-name="oavectorbitname"><a href="oaVectorBitName.html">oaVectorBitName</a></li><li data-class-item data-class-name="oavectorname"><a href="oaVectorName.html">oaVectorName</a></li><li data-class-item data-class-name="oaverilogns"><a href="oaVerilogNS.html">oaVerilogNS</a></li><li data-class-item data-class-name="oavhdlns"><a href="oaVhdlNS.html">oaVhdlNS</a></li><li data-class-item data-class-name="oaviaextensiontype"><a href="oaViaExtensionType.html">oaViaExtensionType</a></li><li data-class-item data-class-name="oavoidpointerappdef"><a href="oaVoidPointerAppDef.html">oaVoidPointerAppDef</a></li><li data-class-item data-class-name="oawidthlengthtabletype"><a href="oaWidthLengthTableType.html">oaWidthLengthTableType</a></li><li data-class-item data-class-name="oawinns"><a href="oaWinNS.html">oaWinNS</a></li><li data-class-item data-class-name="sr1to1relationship"><a href="sr1to1Relationship.html">sr1to1Relationship</a></li></ul></div></div></aside>
|
|
<main class="content">
|
|
<div class="content-grid">
|
|
<div class="doc">
|
|
<div class="crumbs"><a href="../index.html">首页</a> / <a href="index.html">base</a> / oaConstraintGroupDef</div>
|
|
<h1 id="oaconstraintgroupdef">oaConstraintGroupDef</h1>
|
|
<p><strong>模块</strong>: <code>oapy._oa._base</code>
|
|
<strong>导入</strong>: <code>from oapy._oa import _base</code></p>
|
|
<h2 id="_1">概览</h2>
|
|
<p><code>oaConstraintGroupDef</code> 在 <code>oapy</code> 中可用,可通过 <code>_base</code> 模块访问。</p>
|
|
<p>本页汇总 <code>oaConstraintGroupDef</code> 当前在 <code>oapy</code> 中可用的 Python 接口。</p>
|
|
<h2 id="_2">详细说明</h2>
|
|
<p>This class specifies the semantics for constraint groups and defines how the constraints in the corresponding constraint groups are used。 A constraint group definition contains a name and a list of oaManagedType types。 Refer to Using Constraint Group Definitions in the Creating and Modeling Process Rules and Constraints section of the Programmers Guide for information about OpenAccess built-in constraint group definitions。</p>
|
|
<h2 id="_3">方法总览</h2>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>状态</th>
|
|
<th>Python 调用</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>obj.destroy()</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>obj.remove(database)</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>obj.getName(name)</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>obj.getConstraintGroupType()</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>obj.isBuiltIn()</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>obj.isUniqueInDB()</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>obj.getAllowedOwners(allowedOwners)</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>obj.getAllowedDatabases(allowedDatabases)</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>_base.oaConstraintGroupDef.create(name, allowedOwners, allowedDatabases, uniqueInDatabase=false)</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>_base.oaConstraintGroupDef.find(name)</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>✅</td>
|
|
<td><code>_base.oaConstraintGroupDef.get(type)</code></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h2 id="_4">方法说明</h2>
|
|
<h3 id="objdestroy"><code>obj.destroy()</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>obj.destroy()</code></p>
|
|
<p>This function destroys this constraint group definition。 If it is a built-in definition or there are databases referencing this definition, an exception is thrown。 An exception is also thrown if this function is called when undo is enabled on any of the current in-memory design or tech databases。</p>
|
|
<p><strong>异常</strong></p>
|
|
<ul>
|
|
<li><code>oacUnableToDestroyBuiltInType</code>。</li>
|
|
<li><code>oacObjectDefHasReference</code>。</li>
|
|
<li><code>oacCannotDestroyDefUndo</code>。</li>
|
|
</ul>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
# assume obj is a oaConstraintGroupDef
|
|
obj.destroy()
|
|
</code></pre>
|
|
<h3 id="objremovedatabase"><code>obj.remove(database)</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>obj.remove(database)</code></p>
|
|
<p>This function removes this constraint group definition from the specified database。 If there are any constraint groups in the database that reference this definition, an oacObjectDefHasReference exception is thrown。</p>
|
|
<p><strong>参数</strong></p>
|
|
<ul>
|
|
<li><code>database</code>: The input database from which to remove this constraint group definition。</li>
|
|
</ul>
|
|
<p><strong>异常</strong></p>
|
|
<ul>
|
|
<li><code>oacObjectDefHasReference</code>。</li>
|
|
</ul>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
# assume obj is a oaConstraintGroupDef
|
|
obj.remove(database)
|
|
</code></pre>
|
|
<h3 id="objgetnamename"><code>obj.getName(name)</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>obj.getName(name)</code></p>
|
|
<p>This function returns the name of this constraint group definition。</p>
|
|
<p><strong>参数</strong></p>
|
|
<ul>
|
|
<li><code>name</code>: returned name of this constraint group def。</li>
|
|
</ul>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
# assume obj is a oaConstraintGroupDef
|
|
obj.getName(name)
|
|
</code></pre>
|
|
<h3 id="objgetconstraintgrouptype"><code>obj.getConstraintGroupType()</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>obj.getConstraintGroupType()</code></p>
|
|
<p>This function returns the type of this constraint group definition。 This function throws an oacInvalidOperationOnUserDefinedConstraintGroupDef exception if the constraint group def is a user-defined constraint group def。</p>
|
|
<p><strong>异常</strong></p>
|
|
<ul>
|
|
<li><code>oacInvalidOperationOnUserDefinedConstraintGroupDef</code>。</li>
|
|
</ul>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
# assume obj is a oaConstraintGroupDef
|
|
obj.getConstraintGroupType()
|
|
</code></pre>
|
|
<h3 id="objisbuiltin"><code>obj.isBuiltIn()</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>obj.isBuiltIn()</code></p>
|
|
<p>This function returns true if the constraint group definition is a built-in definition。</p>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
# assume obj is a oaConstraintGroupDef
|
|
obj.isBuiltIn()
|
|
</code></pre>
|
|
<h3 id="objisuniqueindb"><code>obj.isUniqueInDB()</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>obj.isUniqueInDB()</code></p>
|
|
<p>This function returns true if only one stand-alone constraintGroup of this type can be created in the allowed databases。</p>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
# assume obj is a oaConstraintGroupDef
|
|
obj.isUniqueInDB()
|
|
</code></pre>
|
|
<h3 id="objgetallowedownersallowedowners"><code>obj.getAllowedOwners(allowedOwners)</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>obj.getAllowedOwners(allowedOwners)</code></p>
|
|
<p>This function returns an array of objects that are allowed to own constraint groups of this type。</p>
|
|
<p><strong>参数</strong></p>
|
|
<ul>
|
|
<li><code>allowedOwners</code>: the returned managed type array of allowed owners。</li>
|
|
</ul>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
# assume obj is a oaConstraintGroupDef
|
|
obj.getAllowedOwners(allowedOwners)
|
|
</code></pre>
|
|
<h3 id="objgetalloweddatabasesalloweddatabases"><code>obj.getAllowedDatabases(allowedDatabases)</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>obj.getAllowedDatabases(allowedDatabases)</code></p>
|
|
<p>This method returns the valid types of databases in which a group specified with this definition can be created。</p>
|
|
<p><strong>参数</strong></p>
|
|
<ul>
|
|
<li><code>allowedDatabases</code>: the returned subset collection of allowed databases。</li>
|
|
</ul>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
# assume obj is a oaConstraintGroupDef
|
|
obj.getAllowedDatabases(allowedDatabases)
|
|
</code></pre>
|
|
<h3 id="_baseoaconstraintgroupdefcreatename-allowedowners-alloweddatabases-uniqueindatabasefalse"><code>_base.oaConstraintGroupDef.create(name, allowedOwners, allowedDatabases, uniqueInDatabase=false)</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>_base.oaConstraintGroupDef.create(name, allowedOwners, allowedDatabases, uniqueInDatabase=false)</code></p>
|
|
<p>This function creates a new constraint group definition with the specified attributes。 If the constraint group definition already exists, an exception is thrown。</p>
|
|
<p><strong>参数</strong></p>
|
|
<ul>
|
|
<li><code>name</code>: The name of the constraint group to create。</li>
|
|
<li><code>allowedOwners</code>: An array of the managed object types permitted in the associated constraint groups。</li>
|
|
<li><code>allowedDatabases</code>: The permitted types of databases in which a group specified with this definition can be created。</li>
|
|
<li><code>uniqueInDatabase</code>: If set to true, only one stand-alone constraintGroup of this type is permitted to be created in an allowed database。</li>
|
|
</ul>
|
|
<p><strong>异常</strong></p>
|
|
<ul>
|
|
<li><code>oacObjectDefExists</code>。</li>
|
|
<li><code>oacInvalidConstraintGroupDefUniqueAttribute</code>。</li>
|
|
<li><code>oacDBTypeCannotBeOwnerAndContainerConstraintGroupDef</code>。</li>
|
|
</ul>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
_base.oaConstraintGroupDef.create(name, allowedOwners, allowedDatabases, uniqueInDatabase=false)
|
|
</code></pre>
|
|
<h3 id="_baseoaconstraintgroupdeffindname"><code>_base.oaConstraintGroupDef.find(name)</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>_base.oaConstraintGroupDef.find(name)</code></p>
|
|
<p>This function returns the constraint group definition with the specified name。 If no definition by that name is found, NULL is returned。</p>
|
|
<p><strong>参数</strong></p>
|
|
<ul>
|
|
<li><code>name</code>: The input name of the constraint group definition to match。</li>
|
|
</ul>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
_base.oaConstraintGroupDef.find(name)
|
|
</code></pre>
|
|
<h3 id="_baseoaconstraintgroupdefgettype"><code>_base.oaConstraintGroupDef.get(type)</code></h3>
|
|
<p><strong>绑定状态</strong>: 已绑定</p>
|
|
<p><strong>Python 调用</strong>: <code>_base.oaConstraintGroupDef.get(type)</code></p>
|
|
<p>This function returns the constraint group definition associated with the specified type。</p>
|
|
<p><strong>参数</strong></p>
|
|
<ul>
|
|
<li><code>type</code>: The input constraint group type of the constraint group definition to match。</li>
|
|
</ul>
|
|
<p><strong>Python 示例</strong></p>
|
|
<pre><code class="language-python">from oapy._oa import _base
|
|
|
|
_base.oaConstraintGroupDef.get(type)
|
|
</code></pre>
|
|
</div>
|
|
<aside class="toc-panel"><button class="toc-toggle" type="button" data-toc-toggle aria-expanded="false"><span>方法</span><span class="toc-toggle-indicator">展开</span></button><div class="toc-body"><h2>方法</h2><ul><li><a href="#obj-destroy"><code>obj.destroy()</code></a></li><li><a href="#obj-remove-database"><code>obj.remove(database)</code></a></li><li><a href="#obj-getname-name"><code>obj.getName(name)</code></a></li><li><a href="#obj-getconstraintgrouptype"><code>obj.getConstraintGroupType()</code></a></li><li><a href="#obj-isbuiltin"><code>obj.isBuiltIn()</code></a></li><li><a href="#obj-isuniqueindb"><code>obj.isUniqueInDB()</code></a></li><li><a href="#obj-getallowedowners-allowedowners"><code>obj.getAllowedOwners(allowedOwners)</code></a></li><li><a href="#obj-getalloweddatabases-alloweddatabases"><code>obj.getAllowedDatabases(allowedDatabases)</code></a></li><li><a href="#base-oaconstraintgroupdef-create-name-allowedowners-alloweddatabases-uniqueindatabase-false"><code>_base.oaConstraintGroupDef.create(name, allowedOwners, allowedDatabases, uniqueInDatabase=false)</code></a></li><li><a href="#base-oaconstraintgroupdef-find-name"><code>_base.oaConstraintGroupDef.find(name)</code></a></li><li><a href="#base-oaconstraintgroupdef-get-type"><code>_base.oaConstraintGroupDef.get(type)</code></a></li></ul></div></aside>
|
|
</div>
|
|
</main>
|
|
</div>
|
|
<div class="footer">oapy 是 AIVI 项目的一部分。此站点提供当前 oapy Python API 的中文文档。</div>
|
|
<script>
|
|
document.addEventListener("DOMContentLoaded", () => {
|
|
const input = document.querySelector("[data-class-filter]");
|
|
if (input) {
|
|
input.addEventListener("input", () => {
|
|
const term = input.value.trim().toLowerCase();
|
|
document.querySelectorAll("[data-class-item]").forEach((item) => {
|
|
const name = item.getAttribute("data-class-name") || "";
|
|
item.classList.toggle("hidden", term && !name.includes(term));
|
|
});
|
|
});
|
|
}
|
|
|
|
const globalInput = document.querySelector("[data-global-search]");
|
|
if (globalInput) {
|
|
globalInput.addEventListener("input", () => {
|
|
const term = globalInput.value.trim().toLowerCase();
|
|
document.querySelectorAll("[data-search-item]").forEach((item) => {
|
|
const name = item.getAttribute("data-search-name") || "";
|
|
const module = item.getAttribute("data-search-module") || "";
|
|
const visible = !term || name.includes(term) || module.includes(term);
|
|
item.classList.toggle("hidden", !visible);
|
|
});
|
|
});
|
|
}
|
|
|
|
document.querySelectorAll("[data-toc-toggle]").forEach((button) => {
|
|
button.addEventListener("click", () => {
|
|
const panel = button.closest(".toc-panel");
|
|
if (!panel) return;
|
|
const isOpen = panel.classList.toggle("open");
|
|
button.setAttribute("aria-expanded", isOpen ? "true" : "false");
|
|
const indicator = button.querySelector(".toc-toggle-indicator");
|
|
if (indicator) {
|
|
indicator.textContent = isOpen ? "Hide" : "Show";
|
|
}
|
|
});
|
|
});
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|