コード例 #1
0
 def add_wing(self,wing,nSurfPts=25,opacity=1.0,color=(0.49,1,0.83)):
     nSeg = wing.nSeg
     nSec2 = 2*nSeg+1
     xMesh = np.zeros([nSec2,nSurfPts])
     yMesh = np.zeros([nSec2,nSurfPts])
     zMesh = np.zeros([nSec2,nSurfPts])
     for i in range(nSeg+1):
         afPts = wing.airfoils[i].redim(nSurfPts,overwrite=False)
         section = afPts*wing.chords[i]
         axis1 = np.array([wing.chords[i]*0.25, 0.0])
         section = rotate_2d(section,axis1,wing.secAngles[i])
         secX = section[:,0] + wing.secApex[i,0]
         secY = np.zeros(nSurfPts) + wing.secApex[i,1]
         secZ = section[:,1] + wing.secApex[i,2]
         if i==0:
             xMesh[nSeg] = np.copy(secX)
             yMesh[nSeg] = np.copy(secY)
             zMesh[nSeg] = np.copy(secZ)
         else:
             xMesh[nSeg-i] = np.copy(secX)
             xMesh[nSeg+i] = np.copy(secX)
             yMesh[nSeg-i] = np.copy(-secY)
             yMesh[nSeg+i] = np.copy(secY)
             zMesh[nSeg-i] = np.copy(secZ)
             zMesh[nSeg+i] = np.copy(secZ)
     self.xMesh.append(xMesh)
     self.yMesh.append(yMesh)
     self.zMesh.append(zMesh)
     self.meshOpacity.append(opacity)
     self.meshColor.append(color)
コード例 #2
0
ファイル: pointwise_fw.py プロジェクト: maximtyan/maxim-codes
 def write_curve(fid1, nConnect, pts, apex, chord, angle, rotAxis=0.25, rev=False):
     if rev:
         pts = np.flipud(pts)
     apex = np.array([apex[0],apex[2],apex[1]])
     pts = rotate_2d(pts, [rotAxis,0], angle) *chord
     pts = np.hstack([pts,np.zeros([len(pts),1])])
     pts += apex
     for pt in pts:
         fid1.write('  $_TMP(PW_%d) addPoint {%.10f %.10f %.10f}\n'%(nConnect,pt[0], pt[1], pt[2]))