Scripts/OtherJs/eCharts/zrender-master/src/tool/area.js
(开头部分) 28KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/**
* zrender: 图形空间辅助类
*
* @author Kener (@Kener-林峰, kener.linfeng@gmail.com)
* pissang (https://www.github.com/pissang)
*
* isInside:是否在区域内部
* isOutside:是否在区域外部
* getTextWidth:测算单行文本宽度
*/
define(
function (require) {
'use strict';
var util = require('./util');
var curve = require('./curve');
var _ctx;
var _textWidthCache = {};
var _textHeightCache = {};
var _textWidthCacheCounter = 0;
var _textHeightCacheCounter = 0;
var TEXT_CACHE_MAX = 5000;
var PI2 = Math.PI * 2;
function normalizeRadian(angle) {
angle %= PI2;
if (angle < 0) {
angle += PI2;
}
return angle;
}
/**
* 包含判断
*
* @param {Object} shape : 图形
* @param {Object} area : 目标区域
* @param {number} x : 横坐标
* @param {number} y : 纵坐标
*/
function isInside(shape, area, x, y) {
if (!area || !shape) {
// 无参数或不支持类型
return false;
}
var zoneType = shape.type;
_ctx = _ctx || util.getContext();
// 未实现或不可用时(excanvas不支持)则数学运算,主要是line,polyline,ring
var _mathReturn = _mathMethod(shape, area, x, y);
if (typeof _mathReturn != 'undefined') {
return _mathReturn;
}
if (shape.buildPath && _ctx.isPointInPath) {
return _buildPathMethod(shape, _ctx, area, x, y);
后面还有 799 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
