• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

TypeScript sequence.flatten函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了TypeScript中tvs-libs/dist/utils/sequence.flatten函数的典型用法代码示例。如果您正苦于以下问题:TypeScript flatten函数的具体用法?TypeScript flatten怎么用?TypeScript flatten使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了flatten函数的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。

示例1: mapcat

					mapcat(c => {
						const n1 = nodes[c[0]]
						const n2 = nodes[c[1]]
						const vDiff = normalize(sub(n2.pos, n1.pos))
						const normal = [vDiff[1], -vDiff[0]]
						const p1 = add(n1.pos, mul(lineWidth / 2, normal))
						const p2 = add(n1.pos, mul(-lineWidth / 2, normal))
						const p3 = add(n2.pos, mul(lineWidth / 2, normal))
						const p4 = add(n2.pos, mul(-lineWidth / 2, normal))
						return flatten([p3, p2, p1, p2, p3, p4])
					}, connections),
开发者ID:trivial-space,项目名称:playground,代码行数:11,代码来源:geometries.ts


示例2: flatten

			box.map((side, i) => flatten(side).map(() => faceNormals[i])),
开发者ID:trivial-space,项目名称:playground,代码行数:1,代码来源:geometries.ts


示例3: randomDivide

	return randomDivide(q, count).map(q => flatten(subdivide(horzDiv(q))))
开发者ID:trivial-space,项目名称:playground,代码行数:1,代码来源:geometries.ts


示例4: subdivide

function subdivide(quads: Quad[], times = 1): Quad[] {
	for (let i = 0; i < times; i++) {
		quads = flatten(quads.map(q => flatten(vertDiv(q).map(horzDiv))))
	}
	return quads
}
开发者ID:trivial-space,项目名称:playground,代码行数:6,代码来源:geometries.ts


示例5: extrudeRight

	const rt = extrudeRight([0, 0, 20], right(bk))
	const ft = extrudeRight([-20, 0, 0], right(rt))
	const lf = extrudeRight([0, 0, -20], right(ft))
	return [
		makeSideSegments(bk, count),
		makeSideSegments(rt, count),
		makeSideSegments(ft, count),
		makeSideSegments(lf, count),
	]
})()

export const faceNormals = box.map(q => normal(q[1]))

export const wallsForm = getForm(painter, 'wallsForm').update(
	convertStackGLGeometry({
		position: flatten(flatten(box)),
		// color: flatten(b.map((side) => flatten(side.map((slice) => flatten(slice.map((q) => (q as any[]).map(() => pickRandom(c)))))))),
		color: flatten(
			box.map((side, i) =>
				flatten(
					side.map((slice, j) =>
						slice.map(() => colors[i * boxSliceCount + j]),
					),
				),
			),
		),
		normal: flatten(
			box.map((side, i) => flatten(side).map(() => faceNormals[i])),
		),
		cells: triangulate(4 * boxSliceCount * 4 * 2),
	}),
开发者ID:trivial-space,项目名称:playground,代码行数:31,代码来源:geometries.ts


示例6: getShade

import sideFrag from './shaders/side.frag'

// ===== shaders =====

const pointsShade = getShade(painter, 'point').update({
	vert: pointVert,
	frag: pointFrag,
})

// ===== geometries =====

const pointsForm = getForm(painter, 'points').update({
	drawType: 'POINTS',
	attribs: {
		position: {
			buffer: new Float32Array(flatten(nodes)),
			storeType: 'DYNAMIC',
		},
	},
	itemCount: nodes.length,
})

// ===== objects =====

const pointsSketch = getSketch(painter, 'points').update({
	form: pointsForm,
	shade: pointsShade,
})

// ===== layers =====
开发者ID:trivial-space,项目名称:playground,代码行数:30,代码来源:index.ts


示例7: randInt

		id: i,
		pos: [Math.random() * canvas.width, Math.random() * canvas.height],
		ns: randInt(nameSpaceCount),
		force: [0, 0],
	}),
	nodeCount,
)

export const connections = flatten(
	times(i => {
		if (i < nodeCount - 3) {
			const i1 = randIntInRange(i + 1, nodeCount - 1)
			const cs = [[i, i1] as [number, number]]
			const i2 = randIntInRange(i + 1, nodeCount - 1)
			if (i2 !== i1) {
				cs.push([i, i2])
			}
			return cs
		} else {
			return []
		}
	}, nodeCount),
)

function updateForces(force: M<number>, dir: M<number[]>, from: any, to: any) {
	const update = (f: M<number>) => (v: number[]) =>
		f.combine(mul, dir).pull(add, v).value

	alter(from, 'force', update(force))
	alter(to, 'force', update(force.map(f => -f)))
}
开发者ID:trivial-space,项目名称:playground,代码行数:31,代码来源:nodes.ts



注:本文中的tvs-libs/dist/utils/sequence.flatten函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
TypeScript painter.Painter类代码示例发布时间:2022-05-25
下一篇:
TypeScript tv4.validateResult函数代码示例发布时间:2022-05-25
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap