公开PNRP17并接通实时气动机械耦合

This commit is contained in:
huojiarong committed 2026-08-02 14:51:31 +00:00
1 parent 503394f3ed
commit 1f4027573f
18 files changed
+693 -29

No files matched your search

+10
View File
@@ -3,6 +3,7 @@ import {
AmesimF000Symbol,
AmesimForcSymbol,
AmesimLmechn1Symbol,
AmesimPnrp17Symbol,
AmesimLstp00aSymbol,
AmesimMecmas21Symbol,
} from "./componentSymbols/mechanical";
@@ -194,6 +195,7 @@ const symbolRegistry = {
amesim_mecmas21: { presentation: "framed", render: AmesimMecmas21Symbol },
amesim_lstp00a: { presentation: "framed", render: AmesimLstp00aSymbol },
amesim_lmechn1: { presentation: "framed", render: AmesimLmechn1Symbol },
amesim_pnrp17: { presentation: "framed", render: AmesimPnrp17Symbol },
amesim_ideal_air_medium: {
presentation: "bare",
render: AmesimIdealAirMediumSymbol,
@@ -321,6 +323,14 @@ const symbolPortAnchors: Partial<
left: [7, 12, 17, 22, 27, 32, 37, 42].map((y) => ({ x: 5, y })),
right: [{ x: 59, y: 24 }],
},
amesim_pnrp17: {
left: [
{ x: 2, y: 24 },
{ x: 2, y: 10 },
{ x: 2, y: 38 },
],
right: [{ x: 62, y: 10 }, { x: 62, y: 38 }],
},
};
function isRegisteredComponentSymbol(symbol: string): symbol is RegisteredComponentSymbol {
@@ -215,3 +215,55 @@ export function AmesimLmechn1Symbol() {
</SymbolSvg>
);
}
export function AmesimPnrp17Symbol() {
return (
<SymbolSvg className="component-symbol-amesim-pnrp17" domain="mechanical">
<path
d="M2 24h17M2 10h11M2 38h11M51 10h11M51 38h11"
{...mechanicalStroke}
/>
<path
d="M7 6v8h6M7 34v8h6M57 6v8h-6M57 34v8h-6"
{...mechanicalStroke}
/>
<rect
fill={SYMBOL_FILL}
height="34"
rx="1"
stroke={SYMBOL_STROKE}
strokeWidth="2"
width="32"
x="18"
y="7"
/>
<path d="M38 8v32M38 24h12" {...mechanicalStroke} />
<path
d="M22 18h12M28 14l6 4-6 4"
fill="none"
stroke={SYMBOL_ACCENT}
strokeLinecap="round"
strokeLinejoin="round"
strokeWidth="1.8"
/>
<path
d="M4 21v6M7 20v8M10 21v6"
fill="none"
stroke={SYMBOL_ACCENT}
strokeWidth="1.2"
/>
<text
dominantBaseline="central"
fill={SYMBOL_STROKE}
fontFamily="Arial, sans-serif"
fontSize="8"
fontWeight="600"
textAnchor="middle"
x="28"
y="32"
>
P
</text>
</SymbolSvg>
);
}