Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cecum new #234

Merged
merged 31 commits into from
Mar 14, 2024
Merged
Show file tree
Hide file tree
Changes from 29 commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
e051a3d
Initial commit of cecum derived from network
mlin865 Jun 30, 2023
5875e8a
Merge remote-tracking branch 'abi/main' into cecumNew
mlin865 Jul 9, 2023
a458308
Update code for zinc group changes
mlin865 Jul 10, 2023
5f0d63f
Keep apex smooth
mlin865 Jul 11, 2023
6e885e2
Correct linear mapping for elements around annulus
mlin865 Jul 12, 2023
acc32a3
Replace cecum1 with cecum2
mlin865 Jul 12, 2023
d8d839a
Add human3 for GI tract
mlin865 Jul 13, 2023
9e15b67
Update unit test for cecum
mlin865 Jul 13, 2023
d6b514e
Clean up and remove redundant code
mlin865 Jul 16, 2023
17a3b4f
Use 1D network layout as central path for esophagus and intestines
mlin865 Jul 17, 2023
132823d
Update stomach to use 1D network layout
mlin865 Jul 18, 2023
9ad2d0c
Use network layout for ostium central path
mlin865 Jul 21, 2023
a5dcb2e
Merge remote-tracking branch 'abi/main' into cecumNew
mlin865 Jul 21, 2023
343dd4b
Merge remote-tracking branch 'abi/main' into cecumNew
mlin865 Aug 15, 2023
34d4471
Merge remote-tracking branch 'abi/main' into cecumNew
mlin865 Aug 27, 2023
42140f6
Use d3 on central path to control radius of elliptical ostium
mlin865 Aug 28, 2023
5e8c274
Make d2 and d3 to outer surface of ostium2
mlin865 Aug 28, 2023
dd25f81
Update scaffolds so d2 and d3 of central path point to outer surface
mlin865 Aug 31, 2023
39ffbbf
Add T-junctions for stomach scaffolds
mlin865 Sep 6, 2023
1cf4f7e
Clean up derivatives around annulus
mlin865 Sep 8, 2023
e5c7c4e
Add gastrointestinal tract
mlin865 Sep 27, 2023
33956af
Update unit tests and add test for GI Tract
mlin865 Sep 28, 2023
56a3330
Merge remote-tracking branch 'abi/main' into cecumNew
mlin865 Sep 28, 2023
77ca8c1
Merge remote-tracking branch 'abi/main' into cecumNew
mlin865 Jan 31, 2024
6fb6f84
Merge remote-tracking branch 'abi/main' into cecumNew
mlin865 Feb 20, 2024
eea4b43
Change central path to network layout and move parameterSetStructureS…
mlin865 Feb 21, 2024
f9709e3
Remove preview of ostium2 subscaffold from stomach and cecum scaffold…
mlin865 Feb 22, 2024
68ffa5b
Update tests
mlin865 Mar 14, 2024
8708c39
Force sub-scaffolds to use 1 element through wall
mlin865 Mar 14, 2024
c9ff5e4
Replace variable central path with network layout
mlin865 Mar 14, 2024
b9bbc50
Replace findCurvature functions with getCurvaturesAlongCurve
mlin865 Mar 14, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion src/scaffoldmaker/annotation/cecum_terms.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,13 @@

# convention: preferred name, preferred id, followed by any other ids and alternative names
cecum_terms = [
("caecum", "UBERON:0001153", "FMA:14541", "ILX:0732270")
("caecum", "UBERON:0001153", "FMA:14541", "ILX:0732270"),
("cecum mucosa", "UBERON:0000314", "FMA:14998", "ILX:0723957"),
("circular muscle layer of cecum", "ILX:0774843"),
("ileum part of cecum", "None"),
("longitudinal muscle layer of cecum", "ILX:0776047"),
("serosa of cecum", "ILX:0773223"),
("submucosa of cecum", "UBERON:0004927", "FMA:14999", "ILX:0725500")
]


Expand Down
6 changes: 6 additions & 0 deletions src/scaffoldmaker/annotation/smallintestine_terms.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,22 @@
# convention: preferred name, preferred id, followed by any other ids and alternative names
smallintestine_terms = [
("circular-longitudinal muscle interface of first segment of the duodenum along the gastric-omentum attachment", "ILX:0793090"),
("circular muscle layer of ileum", "ILX:0776561"),
("circular muscle layer of small intestine", "ILX:0772669"),
("duodenum", "UBERON:0002114", "FMA:7206", "ILX:0726125"),
("ileocecal junction", "UBERON:0001073", "FMA:11338", "ILX:0730012"),
("ileum", "UBERON:0002116", "FMA:7208", "ILX:0728151"),
("jejunum", "UBERON:0002115", "FMA:7207", "ILX:0724224"),
("longitudinal muscle layer of ileum", "ILX:0770304"),
("longitudinal muscle layer of small intestine", "ILX:0772125"),
("luminal surface of duodenum", "ILX:0793121"),
("mucosa of ileum", "ILX:0770578"),
("mucosa of small intestine", "UBERON:0001204", "FMA:14933", "ILX:0770578"),
("serosa of duodenum", "UBERON:0003336", "FMA:14948", "ILX:0732373"),
("serosa of ileum", "ILX:0774472"),
("serosa of small intestine", "UBERON:0001206", "FMA:14938", "ILX:0727465"),
("small intestine", "UBERON:0002108", "FMA:7200", "ILX:0726770"),
("submucosa of ileum", "UBERON:0004946", "FMA:14957", "ILX:0734297"),
("submucosa of small intestine", "UBERON:0001205", "FMA:14934", "ILX:0735609")
]

Expand Down
2 changes: 2 additions & 0 deletions src/scaffoldmaker/annotation/stomach_terms.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,15 @@
("distal point of lower esophageal sphincter serosa on the greater curvature of stomach", "ILX:0793179"),
("distal point of lower esophageal sphincter serosa on the lesser curvature of stomach", "ILX:0793180"),
("dorsal stomach", "ILX:0793086"),
("duodenum part of stomach", "None"),
("esophagogastric junction", "UBERON:0007650", "FMA: 9434", "ILX:0733910"),
("esophagogastric junction along the greater curvature on circular-longitudinal muscle interface", "ILX:0793098"),
("esophagogastric junction along the greater curvature on luminal surface", "ILX:0793099"),
("esophagogastric junction along the greater curvature on serosa", "ILX:0793100"),
("esophagogastric junction along the lesser curvature on circular-longitudinal muscle interface", "ILX:0793101"),
("esophagogastric junction along the lesser curvature on luminal surface", "ILX:0793102"),
("esophagogastric junction along the lesser curvature on serosa", "ILX:0793103"),
("esophagus part of stomach", "None"),
("forestomach-glandular stomach junction", "UBERON:0012270", "ILX:0729974"),
("fundus of stomach", "UBERON:0001160", " FMA:14559", "ILX:0724443"),
("fundus-body junction along the greater curvature on circular-longitudinal muscle interface", "ILX:0793104"),
Expand Down
4 changes: 2 additions & 2 deletions src/scaffoldmaker/meshtypes/meshtype_3d_bladder1.py
Original file line number Diff line number Diff line change
Expand Up @@ -573,7 +573,7 @@ def generateBaseMesh(cls, region, options):
bladderCoordinatesFieldName, elementsCountAround, elementsCountAlongBladder, elementsCountThroughWall,
annotationGroupsAround, annotationGroupsAlong, annotationGroupsThroughWall,
firstNodeIdentifier, firstElementIdentifier,
useCubicHermiteThroughWall, useCrossDerivatives, closedProximalEnd=True)
useCubicHermiteThroughWall, useCrossDerivatives, closedProximalEnd=True)[0:3]

bladderCoordinates = fm.findFieldByName(bladderCoordinatesFieldName)

Expand Down Expand Up @@ -1335,7 +1335,7 @@ def getBladderCoordinates(elementsCountAlongDome, elementsCountAlongNeck, elemen
xList, d1List, d2List, d3List, curvatureList = \
tubemesh.extrudeSurfaceCoordinates(xInner, d1Inner, d2Inner, d3Inner, wallThicknessList, relativeThicknessList,
elementsCountAround, elementsCountAlongBladder, elementsCountThroughWall,
transitElementList, outward=False)
transitElementList, outward=False)[0:5]

# Deal with multiple nodes at the start point for closed proximal end
n = elementsCountAround * (elementsCountThroughWall + 1)
Expand Down
16 changes: 7 additions & 9 deletions src/scaffoldmaker/meshtypes/meshtype_3d_bladderurethra1.py
Original file line number Diff line number Diff line change
Expand Up @@ -884,14 +884,12 @@ def generateBaseMesh(cls, region, options):
transitElementList = [0] * elementsCountAround

relativeThicknessList = []
xList, d1List, d2List, d3List, curvatureList = tubemesh.extrudeSurfaceCoordinates(xWarpedList, d1WarpedList,
d2WarpedList, d3WarpedUnitList,
wallThicknessList,
relativeThicknessList,
elementsCountAround,
elementsCountAlong,
elementsCountThroughWall,
transitElementList, outward=True)
xList, d1List, d2List, d3List, curvatureList = \
tubemesh.extrudeSurfaceCoordinates(xWarpedList, d1WarpedList, d2WarpedList, d3WarpedUnitList,
wallThicknessList, relativeThicknessList, elementsCountAround,
elementsCountAlong, elementsCountThroughWall, transitElementList,
outward=True)[0:5]

# Call the derivatives from the transition list to be replaced in the d2List
idx = elementsCountAlongBladder * elementsCountAround
for n2 in range(elementsCountThroughWall + 1):
Expand Down Expand Up @@ -1045,7 +1043,7 @@ def generateBaseMesh(cls, region, options):
elementsCountAround, elementsCountAlong, elementsCountThroughWall,
annotationGroupsAround, annotationGroupsAlong, annotationGroupsThroughWall,
firstNodeIdentifier, firstElementIdentifier,
useCubicHermiteThroughWall, useCrossDerivatives, closedProximalEnd=True)
useCubicHermiteThroughWall, useCrossDerivatives, closedProximalEnd=True)[0:3]

if includeUreter:
annotationGroups.append(ureterGroup)
Expand Down
Loading