1. using UnityEngine;
  2. using System.Collections;
  3. using System;
  4. public class LearnGrazio : MonoBehaviour {
  5. public Transform m_Transform;
  6. public float m_Radius = 1; // 圆环的半径
  7. public float m_Theta = 0.1f; // 值越低圆环越平滑
  8. public Color m_Color = Color.green; // 线框颜色
  9. void Start()
  10. {
  11. if (m_Transform == null)
  12. {
  13. throw new Exception("Transform is NULL.");
  14. }
  15. }
  16. void OnDrawGizmos()
  17. {
  18. if (m_Transform == null) return;
  19. if (m_Theta < 0.0001f) m_Theta = 0.0001f;
  20. // 设置矩阵
  21. Matrix4x4 defaultMatrix = Gizmos.matrix;
  22. Gizmos.matrix = m_Transform.localToWorldMatrix;
  23. // 设置颜色
  24. Color defaultColor = Gizmos.color;
  25. Gizmos.color = m_Color;
  26. // 绘制圆环
  27. Vector3 beginPoint = Vector3.zero;
  28. Vector3 firstPoint = Vector3.zero;
  29. for (float theta = 0; theta < 2 * Mathf.PI; theta += m_Theta)
  30. {
  31. float x = m_Radius * Mathf.Cos(theta);
  32. float y = m_Radius * Mathf.Sin(theta);
  33. Vector3 endPoint = new Vector3(x, y, 0);
  34. if (theta == 0)
  35. {
  36. firstPoint = endPoint;
  37. }
  38. else
  39. {
  40. Gizmos.DrawLine(beginPoint, endPoint);
  41. }
  42. beginPoint = endPoint;
  43. }
  44. // 绘制最后一条线段
  45. Gizmos.DrawLine(firstPoint, beginPoint);
  46. // 恢复默认颜色
  47. Gizmos.color = defaultColor;
  48. // 恢复默认矩阵
  49. Gizmos.matrix = defaultMatrix;
  50. }
  51. }

unity gizmo绘制圆形帮助调试的更多相关文章

  1. canvas快速绘制圆形、三角形、矩形、多边形

    想看前面整理的canvas常用API的同学可以点下面: canvas学习之API整理笔记(一) canvas学习之API整理笔记(二) 本系列文章涉及的所有代码都将上传至:项目代码github地址,喜 ...

  2. android绘制圆形图片的两种方式

    看下效果先 下面有完整的示例代码 使用BitmapShader(着色器) 我们在绘制view 的时候 就是小学上美术课 用水彩笔在本子上画画 使用着色器绘制圆形图片最简单的理解方式 就是把bitmap ...

  3. Css绘制圆形,环形,椭圆等图形

    转载自http://blog.csdn.net/gongstrong123/article/details/50888758 绘制圆形,环形,椭圆 <!DOCTYPE html> < ...

  4. 使用html5 canvas绘制圆形或弧线

    注意:本文属于<html5 Canvas绘制图形入门详解>系列文章中的一部分.如果你是html5初学者,仅仅阅读本文,可能无法较深入的理解canvas,甚至无法顺畅地通读本文.请点击上述链 ...

  5. html5 canvas绘制圆形印章,以及与页面交互

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. SVG绘制圆形简单示例分享

    今天分享“svg绘制圆形”部分 1.简单圆形 效果图如下: 关键代码: <svg xmlns="http://www.w3.org/2000/svg" version=&qu ...

  7. C#绘制圆形时钟

    本文由作者参考部分案例后加以修改完成: 参考链接如下: http://blog.csdn.net/xuemoyao/article/details/8001113 http://wenku.baidu ...

  8. canvas绘制圆形进度条(或显示当前已浏览网页百分比)

    使用canvas绘制圆形进度条,或者是网页加载进度条 或者是显示你浏览了本网页多少-- 由于个浏览器的计算差异,打开浏览器时 初始值有所不同,但是当拉倒网页底部时,均显示100%. 兼容性:测试浏览器 ...

  9. SkylineGlobe 如何实现绘制圆形Polygon和对图层的圆形范围选择查询

    //结束绘制圆形之前,得到Polygon var pos = gPolyObj.Position; var bufferR = gPolyObj.Radius; var cVerticesArray ...

随机推荐

  1. ubuntu 下使用 putty 调试

    转自:http://blog.csdn.net/wh_19910525/article/details/39313457 Ubuntu的机子上,插上USB2COM线,准备开工. 检查USB2COM在本 ...

  2. jQuery Moblie 学习之page、button、theme、panel、listview、controlgroup、navbar等(一)

    1.jQTouch jQTouch与jQuery Moblie十分相似,也是一个jQuery插件,同样也支持HTML页面标签驱动,实现移动设备视图切换效果.不同的是它是专为WebKit内核的浏览器打造 ...

  3. 发现一php木马代码

    <?php ;//无需验证密码! $shellname='hello~地球~猴子星球欢迎你 '; define('myaddress',__FILE__); error_reporting(E_ ...

  4. 【翻译十】java-固定锁和同步

    Intrinsic Locks and Synchronization Synchronization is built around an internal entity known as the  ...

  5. 无废话ExtJs 入门教程三[窗体:Window组件]

    无废话ExtJs 入门教程三[窗体:Window组件] extjs技术交流,欢迎加群(201926085) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3 ...

  6. POJ2065 SETI(高斯消元 同模方程)

    (a1 * 1^0  +   a2 * 1^1  + ...  an * 1^n - 1) % P = f1 .... (a1 * n^0  +   a2 * n^1  + ...  an - 1 * ...

  7. 攻城狮在路上(壹) Hibernate(十三)--- Hibernate的检索方式(上)

    Hibernate提供了以下几种检索对象的方式: A.导航对象图检索方式. B.OID检索方式.Session.get() load(); C.HQL检索方式.Query. D.QBC检索方式.Que ...

  8. js setTimeout运用

    js setTimeout运用 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht ...

  9. C# Thread 线程状态知识

    .NET 基础类库的System.Threading命名空间提供了大量的类和接口支持多线程.这个命名空间有很多的类.System.Threading.Thread类是创建并控制线程,设置其优先级并获取 ...

  10. 在Salesforce中对Object实现Trigger的绑定

    Trigger的相关属性详细解读请看如下链接: http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_triggers_c ...