📄 numberaxis3d.html
字号:
<FONT color="green">121</FONT> * permitted).<a name="line.121"></a><FONT color="green">122</FONT> * <a name="line.122"></a><FONT color="green">123</FONT> * @return The updated cursor value.<a name="line.123"></a><FONT color="green">124</FONT> */<a name="line.124"></a><FONT color="green">125</FONT> public AxisState draw(Graphics2D g2, double cursor, Rectangle2D plotArea, <a name="line.125"></a><FONT color="green">126</FONT> Rectangle2D dataArea, RectangleEdge edge, <a name="line.126"></a><FONT color="green">127</FONT> PlotRenderingInfo plotState) {<a name="line.127"></a><FONT color="green">128</FONT> <a name="line.128"></a><FONT color="green">129</FONT> // if the axis is not visible, don't draw it...<a name="line.129"></a><FONT color="green">130</FONT> if (!isVisible()) {<a name="line.130"></a><FONT color="green">131</FONT> AxisState state = new AxisState(cursor);<a name="line.131"></a><FONT color="green">132</FONT> // even though the axis is not visible, we need ticks for the <a name="line.132"></a><FONT color="green">133</FONT> // gridlines...<a name="line.133"></a><FONT color="green">134</FONT> List ticks = refreshTicks(g2, state, dataArea, edge); <a name="line.134"></a><FONT color="green">135</FONT> state.setTicks(ticks);<a name="line.135"></a><FONT color="green">136</FONT> return state;<a name="line.136"></a><FONT color="green">137</FONT> }<a name="line.137"></a><FONT color="green">138</FONT> <a name="line.138"></a><FONT color="green">139</FONT> // calculate the adjusted data area taking into account the 3D effect...<a name="line.139"></a><FONT color="green">140</FONT> double xOffset = 0.0;<a name="line.140"></a><FONT color="green">141</FONT> double yOffset = 0.0;<a name="line.141"></a><FONT color="green">142</FONT> Plot plot = getPlot();<a name="line.142"></a><FONT color="green">143</FONT> if (plot instanceof CategoryPlot) {<a name="line.143"></a><FONT color="green">144</FONT> CategoryPlot cp = (CategoryPlot) plot;<a name="line.144"></a><FONT color="green">145</FONT> CategoryItemRenderer r = cp.getRenderer();<a name="line.145"></a><FONT color="green">146</FONT> if (r instanceof Effect3D) {<a name="line.146"></a><FONT color="green">147</FONT> Effect3D e3D = (Effect3D) r;<a name="line.147"></a><FONT color="green">148</FONT> xOffset = e3D.getXOffset();<a name="line.148"></a><FONT color="green">149</FONT> yOffset = e3D.getYOffset();<a name="line.149"></a><FONT color="green">150</FONT> }<a name="line.150"></a><FONT color="green">151</FONT> }<a name="line.151"></a><FONT color="green">152</FONT> <a name="line.152"></a><FONT color="green">153</FONT> double adjustedX = dataArea.getMinX();<a name="line.153"></a><FONT color="green">154</FONT> double adjustedY = dataArea.getMinY();<a name="line.154"></a><FONT color="green">155</FONT> double adjustedW = dataArea.getWidth() - xOffset;<a name="line.155"></a><FONT color="green">156</FONT> double adjustedH = dataArea.getHeight() - yOffset;<a name="line.156"></a><FONT color="green">157</FONT> <a name="line.157"></a><FONT color="green">158</FONT> if (edge == RectangleEdge.LEFT || edge == RectangleEdge.BOTTOM) {<a name="line.158"></a><FONT color="green">159</FONT> adjustedY += yOffset;<a name="line.159"></a><FONT color="green">160</FONT> }<a name="line.160"></a><FONT color="green">161</FONT> else if (edge == RectangleEdge.RIGHT || edge == RectangleEdge.TOP) {<a name="line.161"></a><FONT color="green">162</FONT> adjustedX += xOffset;<a name="line.162"></a><FONT color="green">163</FONT> }<a name="line.163"></a><FONT color="green">164</FONT> Rectangle2D adjustedDataArea = new Rectangle2D.Double(adjustedX, <a name="line.164"></a><FONT color="green">165</FONT> adjustedY, adjustedW, adjustedH);<a name="line.165"></a><FONT color="green">166</FONT> <a name="line.166"></a><FONT color="green">167</FONT> // draw the tick marks and labels...<a name="line.167"></a><FONT color="green">168</FONT> AxisState info = drawTickMarksAndLabels(g2, cursor, plotArea, <a name="line.168"></a><FONT color="green">169</FONT> adjustedDataArea, edge);<a name="line.169"></a><FONT color="green">170</FONT> <a name="line.170"></a><FONT color="green">171</FONT> // draw the axis label...<a name="line.171"></a><FONT color="green">172</FONT> info = drawLabel(getLabel(), g2, plotArea, dataArea, edge, info);<a name="line.172"></a><FONT color="green">173</FONT> <a name="line.173"></a><FONT color="green">174</FONT> return info;<a name="line.174"></a><FONT color="green">175</FONT> <a name="line.175"></a><FONT color="green">176</FONT> }<a name="line.176"></a><FONT color="green">177</FONT> <a name="line.177"></a><FONT color="green">178</FONT> }<a name="line.178"></a></PRE></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -