import { Mesh } from "./Mesh";
import { MeshBuilder } from "../builders/MeshBuilder";

/**
 * Capsule - 胶囊几何体
 *
 * 胶囊形状,底面为半球,常用于碰撞检测。
 * @class Capsule
 * @memberof THING
 * @extends THING.Mesh
 * @public
 * @example
  const capsule = new THING.Capsule({
		radius: 5,
		cylinderHeight: 5,
		widthSegments:16,
		radiusSegmetns:16,
  });
 */
class Capsule extends Mesh {

	/**
	 * @public
	 * 胶囊
	 * @param {CapsuleParam} param 初始化参数
	 */
	constructor(param = {}) {
		param['data'] = MeshBuilder.createCapsule(param);
		param['instanceGroupName'] = param['instanceGroupName'] || 'Capsule';
		super(param);
	}

}

export {
	Capsule
}